基本语法

1.注释---------# 标注文本

2.数字

  • 整数,不区分long和int
    • 进制0xa (16进制的10),0o10(8进制的10),0b10(2进制的10)
    • bool,2个值True,False
  • 浮点数
    • 1.2,3.1415.-0.12,1.46e9等价于1.46*10^9
  • 复数,1+2j

3.字符串

  • 使用‘ “单双引号引用字符的序列

  • ‘ ’ ‘ ” “ ” 单双三引号,可以跨行,可以在其中自由的使用单双引号

    print(''' welcome 'to' python''') #输出 welcome 'to' python
    print(''' welcome 'to' 1\ #输出 welcome 'to' 2\ # 123 3\ # 'python' 'python' ''') 
    
  • 在字符串前面加上r或者R前缀,表示该字符串不做特殊处理(比如字符串中含有\)

  • python为强类型语言,所以不允许’a‘+1

  • 字符串可以直接连接

    print('abc'+'efg')  #打印出abcefg
    

4.转义序列

  • \\ \t \r \n \’ \"
  • 前缀r,把里面的所有的字符当普通字符对待

5.缩进

  • 未使用C等语言的花括号,而是采用缩进的方式表示层次关系
  • 约定使用4个空格缩进

6.续行

  • 在行尾使用 \
  • 如果使用各种括号,认为括号内的是一个整体,内部跨行不用 \

7.标识符

  • 一个名字,用来指代一个值

  • 只能字母,下划线和数字

  • 只能以字母或下划线开头

  • 不能是python的关键字,例如def,class就不能作为标识符

  • python是大小写敏感的

    约定:

    不允许使用中文

    不允许使用歧义单词,例如class_

    在python中不要随便使用下划线开头的标识符

8.常量

  • 一旦赋值就不能改变值的标识符
  • python中无法定义常量

9.字面常量

  • 一个单独的量,例如12,“abc”,‘2341356514.03e-9’

10.变量

  • 赋值后,可以改变值的标识符

运算符Operator

1.算数运算符

  • + - * / % **

    • **表示次方

      print(2**3)  #输出 8
      print(4**0.5) #输出 2.0
      
  • 自然除/结果是浮点数,整除//。注:2.x中对于整数都是/和//都是整除

2.位运算符

  • & | ~ ^ << >>

    • & 按位与

    • | 按位或

    • ~ 按反码补码取反(反出来会比真实相反数小一)

      • 原码

        • 5=> 0b101, 1=>0b1 ,-1=> -0b1, bin(-1) #可以获取数字原码

          bin(-1)  #获得-0b1;
          
      • 反码

        • 正数将原码按位取反;负数符号位不变其余按位取反
      • 补码

        • 正数的补码是其本身;负数符合位不变其余按位取反后-1
    • ^ 按位异或

    • << 向左的位移

      print(1<<2) #输出4
      
    • >> 向右的位移

      print(4>>1) #输出 2
      
  • 常用方式:乘除2的倍数,32//4相当于32>>2

  • 12,0xc,0o14,0b1100

    • ~12等于-13

3.比较运算符

  • == != > < >= <=
  • 返回一个bool值
  • 1<‘1’ 1==‘1’

4.逻辑运算符

  • 与或非 and or not
  • 短路运算符
    • and 如果第一个表达式位False,后面的就没有必要计算了,这个逻辑表达式一定False
    • or 如果第一个表达式True,后面没有必要计算了,这个逻辑表达式一定是True

5.赋值运算符

  • a=min(3,5)
  • += -= *= *= /= %=
  • x=y=z=10

6.成员运算符

  • in ,not in

7.身份运算符

  • is,not is

8.运算优先级(由高到底)

  • 算数运算符 > 位运算符 > 身份运算符 > 成员运算符 > 逻辑运算符

表达式 Expression

1.由数字,符号,括号,变量等的组合

  • 算数表达式
  • 逻辑表达式
  • 赋值表达式
    • Python,赋值及定义,如果一个变量了已经定义,赋值相当于重新定义

程序控制

  • 顺序
    • 按照先后顺序一条一条执行
    • 例如,先洗手,再吃饭,再洗碗
  • 分支
    • 根据不同的情况判断,条件满足执行某条件下的语句
    • 例如,先洗手,如果饭没做好,玩游戏,如果饭做好了,就吃饭,如果饭都没做,叫外卖
  • 循环
    • 条件满足就反复执行,不满足就不执行或者不再执行
    • 例如:先洗手,看饭好了没有,没有好,一会来看一次是否好了,一会儿来看一次,直到饭好了,才可以吃饭。这里循环的条件就是饭好了没,饭没好,就循环的来看饭好了没有。

单分支结构

1.if语句

​ if 表达式:

    代码块(必须由4个空格,不允许使用缩进)

​ 表达式必须是一个bool类型,这个地方有一个隐式转换bool(表达式)

if 1<2:
    print('1 less than 2')

2.代码块

  • 类似于if语句的冒号后面的就是一个代码块
  • if, for , def ,class 等

真值表 bool(表达式)对应的隐式转换

对象/常量
“”
“string”
0
>=1
<=-1
()空原组
[]空列表
{}空字典
None

多分支结构

  • if…elif…else语句

    if 表达式1:
        代码块1
    elif 表达式2:
        代码块2
    elif 表达式3:
        代码块3
    ……
    else:
        代码块
    
     a=4
     if a<1:
         print('S')
     elif a<3:
         print('AS')
     elif a<4:
         print('B')
     else:
         print('sss')
    
    #输出:sss
    

2.分支嵌套

  • 举例

    score=80
    if score<0:
        print("wrong")
    else:
        if score==0:
            print('egg')
        elif score<=100:
            print('right')
        else:
            print('too big')
    #输出:right
    

循环------while语句

  • 语句

    while 表达式:
    	代码块
    #当条件满足表达式为true,进入循环题,执行代码块
    
  • 举例

    flag=10
    while flag:
    	print(flag)
    	flag-=1
    #输出:
    10
    9
    8
    7
    6
    5
    4
    3
    2
    1
    

循环------for语句*

  • 语法

    for element in iteratable:
    	block
    #当可迭代对象中有对象可以迭代,进入循环体,执行代码块
    
  • range函数

  • 举例:打印1~10

    for i in range(10):  //0开始迭代到9,每次i++;
    	print(i+1)
    #输出:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    
    #打印0~9的偶数
    for i in range(2,10,2):		//2开始迭代到9,每次i+=2;
    	print(i)
    #输出:
    2
    4
    6
    8
    

循环continue语句

  • 中断当前循环的当次执行,继续下一次循环

  • 举例:计算10以内的偶数(for循环)

    for i in range(10):
    	if i%2:
    		continue
    	print(i)
    #输出
    0
    2
    4
    6
    8
    

循环break语句

  • 终止当前循环

  • 举例:计算1000以内的被7整除的前20个数(for循环)

    count=0;
    for i in range(0,1000,7):
    	print(i)
    	count+=1
    	if(count>=20):
    		break
    #输出:
    0
    7
    14
    21
    28
    35
    42
    49
    56
    63
    70
    77
    84
    91
    98
    105
    112
    119
    126
    133
    

循环else子句

  • 语法

    while condition:
    	block
    else:
    	block
    for element in iteratable:
    	block
    else:
    	block
    
  • 如果循环正常的执行结束,就执行else子句;如果使用break终止,else子句不会执行

Python输入输出

1.输入

  • input()

    num=intput('请输入一个数')  #输入一个数回车结束
    print(num)  #输入1234 输出1234
    #在有的版本python中存在一下问题
    num=input()  #输入的是一个字符串
    print num   #如果输入1234 打印的是一个字符串’1234‘
    num=int(input())	#输入的是一个整数
    print num     #打印这个整数
    
  • print

    print a #打印变量a
    print(a) #打印a
    print(a,b)  #打印(a,b)
    print a,b   #打印a,b
    
<center> <center> 未完待续 </center> </center>