python语言基础知识

                                  **<>笔记**

1.python简介
创建人:Guido Van Rossum(荷兰人)
时间:1989年创建python
pythohb应用领域:

     系统运维
    网络编程
    可科学计算
    人工智能  - 机器人
    web开发
    云计算
   大数据和数据编程
    教育
    游戏  图像
   其他

2.python的优点和缺点:

优点: 面向对象(java   C++   python都是面向对象的高级语言)
          免费
         可移植
         可混合编程(c/c++  )
         简单易学易用
         开发效率高
         应用领域广泛

缺点:

     与C++比。执行速度不够快
     不能封闭源代码

python官网:  https:wwww.python.org

3.python的安装:

window
Linux/Unix
Mac  os都能运行

python的运行:

   python的解释执行器的类型:
            Cpython(c语言开发)(python3)
            Jpython(java开发)
             Ironpython(.net开发)


pyrhon 的版本:
          pythonv2.7
          python  V3.5     当前教学
          python v3.7    最新的发布版

4.第一个python程序:

 打开sublime  txt  3  编写hello.py
 内容里写print("hello worxd")
 执行python  hello.py 
  python3 hello.py

5.常用的程序文件的后缀:

  .py    python  文件后缀
  .c    C语言文件后缀
  .cpp    C++ 语言的后缀
  .java    java语言的后缀

6.python3的交互模下编写并执行代码:

 进入python交互环境:
               python <回车>

 退出python3交互环境:
 exit()<回车>
 quit()  <回车>
 ctrl+d(输入文件结束符)

7.python3的注释:

python的注释以#开头 直至行尾
作用:
   让注释内容不执行

8.python3的程序组成:

  程序有模块组成
 模块有语句 , 函数  , 类等组成
 语句包含表达式
 表达式建立并处理数据对象

9.python的核心数据类型:

数字(整型   浮点型   复数   布尔型 )
字符串   str  
列表  List

1)数字:

   整数  int
   整型数是不带有小数部分的数据  包括自然数 , 0, 负数
   如  -5    0   100

10.整型字面值得表示方式:

十进制
      10  200     -100    9999 9999999999999999999
八进制方式表示(0o开头     后跟0~7)
          0o11    (9)
          0o177    (127)
十六进制表示 (0x开头   后跟0-9,A-F或a-f)
    注 : a表示10   b表示11    f表示15      
    0x11   (17)
    0xFF    (255)
 二进制表示方式(0b开头 ,后跟0-1)
         0b111     (7)



  练习
   计算0xFFFF表示多少    #65535
   计算0xFFFFFFFF表示多少  #4294967295

      计算0b001表示多少   #0b71

   试着把9转化为为2进制   #1001
2)浮点数  (float):
    浮点数是带有小数部分的数字(小数部份可以是0)
    浮点型数的两种表示方式:
        小数形式:
             3.14    3.1   3.0   3.   0.14  
       科学计算法:
          小数e/E(正负号)指数
                   如   6.17E-1(等同于  0.617)
                       2.99779e8      等同于299790000       
 3)复数 complex:

    分为两部分:
     实部  (real)
     虚部   (image)
    注:  虚数是以j或J结尾的
    复数的字面值:1j,(2j), 1+1j
 4)布尔型数  bool:

     用来表示真和假两种状态的类型
    True   表示真(条件满足成立)
    False    表示假  (条件不满足或不成立里
    说明:
       True的值是1
       False的值是0

     空值  None:

     None是一个表示不存在的特殊对象
    作用:
   用来占位
   变量解除绑定

11.表达式和运算符:

 表达式  expression: 
    有一个数字或数字和运算符组成
作用:
   通常让计算机做一些事情并返回结果
  如 :1+2*3-4
 算术运算符:


         + 加
           -减
          * 乘
         /除法    
         //地板除
         %   求余
          **  幂运算

1)/ 除法:

   除法得到的是浮点型数  不会丢弃小数部分
   1/3       得  0.333333333333333
   8/2   得 4.0

2)//地板除:
除去的结果去掉小树部分向下取整
7/3 得 2.33333333
7//3 得 2
8//3 得 2

3)% 求余:
7%3 得 2.33333333333333
3.25%1.5 得 0.25

4)**幂运算:

     格式:
         x**y       意为x的y次方
        4**2       得 16
        3.0**4.00     得 81

12.运算符的优先级:

         **
                    *  / //  %
                     + —

13.括号分组子表达式:

    用()可以将表达式分组,()内部表达式先进行计算

14.混合类型自动升级:

    1+2.14     返回类型为浮点型  3.14
   基本输出函数
        格式:
        print(要打印的东西)

15.变量:

  1)什么是变量:

     变量是关联一个对象的标识符
     变量可以绑定一个对象,   并可以通过变量名来使用这个对象
   2)标识符的命名方法:

    标识符必须为字母或下划线开头 ,  后跟字母或下划线或数字
     说明:
         不能用python的关键字做变量名
        python的变量名区分大小写
   3).合法的变量名示例:
     a a1   bbbb   _abcd var s1b2
     不合法的变量名:
                 1a    123    ¥sdk  +a    @abc
    4)python的关键字(33个):
         True    False     None     is  del    if  elif   else

16. 赋值语句:

      语法:
            变量名=表达式
            或  变量名1=变量名2=变量名3=表达式
           或  变量名1,变量名2,变量名3...=序列
     作用:

         创建一个变量名或者修改一个变量名绑定的对象
    说明:

         当变量不存在时  ,创建该变量  ,同时将变量绑定在这个对象上
       当变量存在时,  改变变量的绑定对象
        一个变量名只能绑定一个对象
        两个变量可以同时绑定同一个对象
  示例 :

          a=10
          b=20
         a=b  # a绑定在b绑定的对象上,   a与10绑定 , 再绑定在20
         x=y=z=1000    #
         x,y=300,4000  #x绑定在300   y绑定4000

17.python的自动化内存管理(重点):

   a=10000
   b=2000
  a=a+b  #10000和2000两个数据对象运算生成的对象用a变量去绑定,释放了10000的数据对象
  c=a    #发生了什么事儿    a和c同时绑定在3000这个对象上

18.python 中 关联/绑定/引用的含义:

     在python中   变量没有类型
     关联/绑定 /引用是指有一个变量和一个对象的关联关系

练习
1 制定一个半径r=3厘米的园
1) 计算元的周长是多少厘米
2) 计算元的面积是多少平方厘米
2 已知有两个变量
a绑定10000
b绑定 20000
问:在不创建任何新的对象下 ,如和让a和b交换绑定的对象

    法一
    a=10000
    b=20000
    c=0
    c=a,
    a=b。
    b=c
   print("a和b的值是",a,b)


法二:
    a=10000
    b=20000
    a,b=b,a         #序列赋值
    print("a和b的值是",a,b)   # 2000和;0,10000

18在交互模式下查看当前作与内的所有变量:

 help(“_man_”)
  退出 : q
 注:help函数用来查看帮助或运行时信息

19.del语句(delete简写):

      用于删除变量 , 同时接触变量与对象的绑定关系
      如果可能则释放对象
  语法:

       del 变量名
        自动化内存管理的引用计数
       每个对象会记录有几个变量引用自身,当引用的数量为0时对象被销毁,池中自动化内存管           理的方式叫引用计数

20.is /is not 运算符:

 作用:
     判断两个对象是否是同一个对象,当是一个对象时返回True,否则返回False

      is not和is的作用效果相反
  语法: 
        x is y 
        x is not y
   小整数对象池:
   Cpython中,整数-5至256永远在小于整数的对象池中,不会释放并可重复使用
id(x)函数:
  作用:
   返回一个对象在内存当中的地址

练习:
1 在终端打印出如下图形
*
*
**
*
2 中国的称是16两一斤 请问中国古代的216两是现代的几斤几两,写出打印程序
3 从凌晨0:0:0计时 到现在已经过了63320秒 请问现在是几时几分几秒?写出打印程序
4温度装潢
摄氏度=5.0/9.0*(华式温度)
开氏温度=摄氏温度+273.15
问:
100华氏温度转化为摄氏温度是多少度
转化为开氏温度是多少度

      print("   *   ")
      print("  ***  ")
       print(" ***** ")
       print("*******")
      print("古代的216两是现代的",216//16,"斤",216%16,"两")

     print("63320秒是",63320//3600,"时",63320%3600//60,"分",63320%3600%60,"秒")
    print("100华氏温度转化为摄氏温度是",5.0/9.0*100,"度")
    print("100华氏温度转化为开氏温度是",5.0/9.0*100+273.15,"度")

21复合赋值算数运算符:

运算符        说名
 y+=x         等同于  y=y+x
 y-=x
 y*=x
 y/=x 
 y%=x
   y//=x

比较运算符:

   <      小于
   >      大于
   <=     小于等于
   >=     大于等于
   ==     等于
   !=     不等于

语法:

    左表达式> 右表达式
说明:

      比较运算运算符通常返回布尔类型的值
示例:
    100<2000       #True
    100>200    # False  
    1+5== 2+4   #True

    0<=100<=200     True

22.数值对象的构造(创建)函数:

   float   (obj)
        用字符串或数字转换为浮点数   如果不给出参数  则返回0.0
   int(x,base=10)或int(x=0)用数字或字符串转换为证书  如果不给出参数   则返回0
                  base 为进制转换的底数    

   complex(r=0.0 ,i=0.0)    用数字创建一个复数(实部为r ,虚部位i)
    bool(x)    用x创建一个布尔型(true /false)

23函数的调用:

函数名(传参数列表)

说明:

   函数调用表达式,一定会返回一个 对象的引用关系


 bool(x)   返回假值得情况  
bool(x)  用于显示获取x的布尔值

假值情况:

     Zone  空值
    False    布尔假值
     0    0.0   0j   所有数字零



   “”    空字符
   []   空列表 
  ()   空元组
   {}   空字典
  set()   空集合
    其余都返回真值

练习:
将数字3.14用变量pi绑定
将pi变量转化为整数,用i绑定
将pi变量与i变量相减 结果用发绑定
1 . 判断f是否等于0.14 ? 为什么?
2 . 删除所有的变量(用和交互模式做 )def pi,i,f

数值型函数:

  abs(x)        取x的绝对值
  round(numner。,number【,ndigits】)   对书值进行四舍五入,ndigitss
                  是小数向右取整的位数    负数表示向左取整
  pow(x,y,z=None)   相当于x**y或者 x**y%z
 help()查看函数的帮助
 help+ 函数名

   x=123.456789

 print(round(x))
 print(round(x,2))    #123.46

小结:

id(x)   返回整数的地址
float(x)   

 int(x,base=10)
  complex(r=0,i0)

23基本输入函数 input:

 input(“提示字符串”)
返回用户输入的字符串(提示符可以为空)
示例 
input。py
 s=input(“请输入一些文字”)
 print(“刚才输入的内容是”,s)

24基本输出函数 print:

作用:
    将一系列的值以字符串形式输出到标准设备上   默认为终端
格式:
  print(value,。。。。sep=’‘,end=’、n‘)
        选项的关键字参数
   示例:

   print(1,2,3,4)     
   print(1,2,3,4,sep=’#‘)     
   print(1,2,3,4,sep=’‘)        #1234
   print(“hello  world”,sep=’###‘)      #分隔符无效
   print(1,2,3,4,end=’end‘)  
   print(5,6,7.8,end=’¥¥¥‘)

练习:
   1 今天是小名的20岁生日 ,假设每年有365天  计算过了多少个星期天     玉多少天(不要求有精确)
   2 分三次输入当前的小时,分钟 ,秒数
       在终端打印出距离0:0:0  过了多少秒了

练习:

  输入两个整数,分别用变量x的y绑定
    1) 计算着两个数的和。并打印结果
  2) 计算着两个数的成绩,并打印结果
    3)计算x的y次方并打印机结果
     如:
       请输入x:100
   请输入y:200
       打印将结果如下:
100+200=300
  100*200=20000
100**200=….

24语句 statment :

语句有一些表达式组成,通常一条语句可以独立来完成一部分事情并形成结果
      一条语句建议写在一行
    多行语句卸载一行内需要用分号(;)分开
    示例  
        x=100 
        y=200
        print(x+y)
        #写在一行为    x=100;y=200;;print(x+y)

显示换行:

  折行符必须放在一行的末尾  来示意解释执行器的下一行也是本行的语句
       (/      可以显示折行)
    示例 
        x=1+(2*3.0 )+4+5
 隐式换行:
 所有括号的内容换行,成为隐式换行
        ()   []   {}
          #此示例示意隐式换行 
           x=1+(2*3.0 )+4+5

25if语句 :

问题:有两条语句
print(“是偶数”)
print(“是奇数”)
如何只让其中的一条语句执行并打印出结果

 作用:

   让程序根据条件选择性的执行某条语句或,某些语句
语法:
    if  真值表达法1:
         语句块1
    elif 真值语句2:
                语句块2
            elif  真值表达式3:
        语句块3
    ..........
            else:
        语句块4
说明:
  elif子句可以是一个,零个或多个 
   elif子句可以有0个货1个,且只能放在if语句的最后面

练习
任意输入一个数
1) 判断这个数是否大于100

2) 判断这个数是否小于零

3) 判断这个数是否在80-100之间

任意输入一个数,用程序来判断这个数是整数还是负数或者另

1 输入一个季度1~4 输出这个季度有那几个月,如果用户输入的不是1到4的整数,这输入用户您输错了
2 输入一年中的月份1-12 输出这个月在那个极度,如果输入分是其他的数,则提示您错了
答案如下:

y=int(input(“输入一个季度数”))
if y==1:
print(y,”这个季度有1,2,3月”)
elif y==2:
print(y,”这个季度有4,5,6月”)
elif y==3:
print(y,”在各个季度有7,8,9月”)
elif y==4:
print(y,”在这季度有10,11,12 月”)
else:
print(“输入错误”)
x=int(input(“请输入月份整数”))
if x//4==0:
print(“第一季度”)
elif x//4==1:
print(“第二季度”)
elif x//4==2:
print(“第三季度”)
elif x//4==3:
print(“第四季度”)
else:
print(“输入错误”)

1)if语句的真值表达式:

    if 100:
        print(“真值”)
    等同于  if  bool(100):
                     print(“真值”)

2)if语句的嵌套:

if语句的本身是由多条句子组成的一份符合语句
 if语句可以作为语句嵌套到另一个语句的内部

26条件表达式:

语法:
表达式1 if 真值表达式2 else 表达式2
作用:

根据真值表达式的取值(True/False)来决定执行表达式1或者表达式2  并返回结果     

练习
1 写一个程序 输入一个数用if条件表达式计算这个数的绝对值
2 写一个程序,输入一个数,用条件表达式计算这个数的绝对值,并打印出来

#方法一
 x=int(input("请输入一个数"))
  x1=x if x>0 else -x
      print(x,"的绝对值是:",x1)
  #方法二
  y=int(input("请继续输入一个数"))
  if y>0:
    print(y,"的绝对值是",y)
else:
    print(y,"的绝对值是",-y)

28pass 语句:

  作用:
     通常用来填充语法空白
  语法:
        pass 
  示例

  输入一个学生的成绩。如果成绩不在1——100之间,则提示错误

布尔运算
运算符:
not and or
布尔非操作 not
语法:
not x
作用:
对x进行进行布尔取非 如 bool(x)为True则返回False,否则返回True
示例
not False # True
not true # False
not 2000>100 #False

28布尔与操作 and:

            语法:
                x and y
               注:x,y代表假肢对象 ,当x的布尔值为False时 返回x,否则返回y
              示例:

                   True and True    #true
                   true  and   False  #False
                  False and  False  #False

                   1 and 2   # 2
                    0.0 and 0  #0.0

29布尔或 or :

   语法:
       x or  y
注:
  优先返回真值对象  ,当x为True时候  返回x  ,否则返回y
     示例:
    True  or  True   #  true
    True  or  False  #  True
    False  or   True  #True
    False  or   Ffasle  #False
            1 or 2    #1

思考:
score=input(”请输入学生成绩“)or ‘0‘:
score=int(score)
请问这是什么意思?

正负号运算符:

 +(正)  -(负号)

一元运算符

语法:
      +表达式
-  表达式

示例:
a=5
b=-a
c=+a

小结:
运算符 < <= > >= == !=
not and or
+ -

函数:

id
abs
round
float
int
complex
bool
i nput
print

语句
if语句
pass语句
表达式:

练习
1 北京醋租车计价器
收废标准:
3公里以内收费13元
基本单位2.3元/公里 (超出3公里以外)
空使费:超过15公里后了,没公里家收单价的50%空驾驶非(3,45/公里{

要求”输入公里数 打印出费用金额
(以元为单位进行四舍五入)
2 输入一个学生的三颗成绩(只要三个数,不要科目)——

1) 打印出最高分是多少
2) 打印最低分多少
3)、打印平韵分

3 给出一个年份,判断是否为闰年,并打印
每四年一润,每百年不润 四百年又润
如 2016年闰年
2100年非闰年
2400年 润年

4 BMI指数   有成身体质量指数
BMi值计算公式:BMI=体重(公斤)/身高的平方
例如  身高173厘米     体重63公斤
BMI=63/173**2

标准表: 
  BMI<18.5 体过轻
NMI


快捷键

  • 加粗 Ctrl + B
  • 斜体 Ctrl + I
  • 引用 Ctrl + Q
  • 插入链接 Ctrl + L
  • 插入代码 Ctrl + K
  • 插入图片 Ctrl + G
  • 提升标题 Ctrl + H
  • 有序列表 Ctrl + O
  • 无序列表 Ctrl + U
  • 横线 Ctrl + R
  • 撤销 Ctrl + Z
  • 重做 Ctrl + Y

Markdown及扩展

Markdown 是一种轻量级标记语言,它允许人们使用易读易写的纯文本格式编写文档,然后转换成格式丰富的HTML页面。 —— [ 维基百科 ]

使用简单的符号标识不同的标题,将某些文字标记为粗体或者斜体,创建一个链接等,详细语法参考帮助?。

本编辑器支持 Markdown Extra ,  扩展了很多好用的功能。具体请参考Github.

表格

Markdown Extra 表格语法:

项目 价格
Computer $1600
Phone $12
Pipe $1

可以使用冒号来定义对齐方式:

项目 价格 数量
Computer 1600 元 5
Phone 12 元 12
Pipe 1 元 234

定义列表

Markdown Extra 定义列表语法: 项目1 项目2
定义 A
定义 B
项目3
定义 C

定义 D

定义D内容

代码块

代码块语法遵循标准markdown代码,例如:

@requires_authorization
def somefunc(param1='', param2=0):
    '''A docstring'''
    if param1 > param2: # interesting
        print 'Greater'
    return (param2 - param1 + 1) or None
class SomeClass:
    pass
>>> message = '''interpreter
... prompt'''

脚注

生成一个脚注1.

目录

[TOC]来生成目录:

[TOC]

忙得吐血,哪有时间写。


或者流程图:

```flow
st=>start: 开始
e=>end: 结束
op=>operation: 我的操作
cond=>condition: 确认?

st->op->cond
cond(yes)->e
cond(no)->op
  • 关于 序列图 语法,参考 这儿,
  • 关于 流程图 语法,参考 这儿.

  1. 这里是 脚注内容. ↩

你可能感兴趣的:(Python,人工智能python3基础知识)