变量和类型

  • 整型 python中可以处理任意大小整数,支持二进制,八进制,十进制,十六进制
  • 浮点型 浮点数也就是小数
  • 字符串型 以单引号或双引号引起来的任意文本
  • 布尔型 布尔值只有true,false值
  • 复数型 跟数学上复数一样

变量命名

硬性规则

  • 变量名由字母
  • 大小写敏感
  • 不要跟关键字

    PEP 8要求

  • 用小写字母拼写,多个单词用下划线连接

  • 受保护的实例·属性用单个下划线开头
  • 私有的实例属性用俩个下划线开头

给变量命名时做到见名知意很重要

变量的使用

  1. a = 321
  2. b = 12
  3. print(a + b) # 333
  4. print(a - b) # 309
  5. print(a * b) # 3852
  6. print(a / b) # 26.75

在python中可以使用type函数对变量的类型进行检查。

  1. a = 100
  2. b = 12.345
  3. c = 1 + 5j
  4. d = 'hello,world
  5. e = True
  6. print(type(a))
  7. print(type(b))
  8. print(type(c))
  9. print(type(d))
  10. print(type(e))

可以使用Python中内置的函数对变量类型进行转换

  • int():将一个数值或字符串转换成整数,可以指定进制
  • float():将一个字符串转换成浮点数
  • str():将指定的对象转换成字符串形式,可以指定编码
  • chr():将整数转换成该编码对应的字符串(一个字符)
  • ord():将字符串(一个字符)转换成对应的编码(整数)

下面代码通过键盘输入俩个整数来实现对俩个整数的算术运算

  1. a = int(input('a='))
  2. b = int(input('b='))
  3. print('%d + %d = %d' % (a,b,a + b))
  4. print('%d - %d = %d' % (a,b,a - b))
  5. print('%d * %d = %d' % (a,b,a * b))
  6. print('%d / %d = %d' % (a,b,a / b))
  7. print('%d // %d = %d' % (a,b,a // b))
  8. print('%d %% %d = %d' % (a,b,a % b))
  9. print('%d ** %d = %d' % (a,b,a ** b))

上面的print函数中输出的字符串使用了占位符语法,其中%d是整数的占位符,%f是小数的占位符,%%表示百分号(因为百分号代表占位符,所以要写成%%),字符串之后的%后面跟的变量值会替换掉占位符然后输出到终端中

运算符

运算符 描述
[][:] 下标,切片
** 指数
~ + - 按位取反,正负号
* / % // 乘,除,模,整除
+ - 加,减
>> << 右移,左移
& 按位与
`^ \ ` 按位异或,按位或
<= < > >= 小于等于,小于,大于,大于等于
== != 等于,不等于
is is not 身份运算符
in not in 成员运算符
not or and 逻辑运算符
`= += -= = /= %= //= *= &= = ^= >>= <<=` (复合)赋值运算符

在实际开发中,搞不清楚运算符的优先级,可以使用括号来确保运算的执行顺序

赋值运算符

赋值运算符是最为常见的运算符,它的作用是将右边的值赋给左边的变量

  1. a = 10
  2. b = 3
  3. a += b # 相当于: a = a+b
  4. a *= a + 2 # 相当于 a = a * (a+2)
  5. print(a)

比较运算符和逻辑运算符

比较运算符也称为关系运算符,包括==,!=,<,>,<=,>=,其中==这里必须是俩个等于号,因为=是赋值运算符,==才是比较相等的比较运算符,比较运算符会产生布尔值,要么是True要么是False
逻辑运算符有三个,分别是and,ornot

  • and会链接俩个布尔值,如果都为Ture则为True,如果一边为False,则为False

,如果and左边的布尔值是False,右边不会执行,这就是短路处理

  • or会链接俩个布尔值,如果一个为True则为True,同样拥有短路处理,左边为True,右边就为True
  • not运算符的后面会跟上一个布尔值,它的作用是得到与该布尔值相反的值,如果后面的值是True结果为False,而后面的布尔值是False则运算结果是True
    1. flag0 = 1 == 1
    2. flag1 = 3 > 2
    3. flag2 = 2 < 1
    4. flag3 = flag1 and flag2
    5. flag4 = falg1 or flag2
    6. flag5 = not(1!=2)
    7. print('flag0 =',flag0)
    8. print('flag1 =',flag1)
    9. print('flag2 =',flag2)
    10. print('flag3 =',flag3)
    11. print('flag4 =',flag4)
    12. print('flag5 =',flag5)

    比较运算符的优先级高与赋值运算符,所以flag0 = 1 ==1先做1 == 1产生布尔值True,再将这个值赋值给变量flag0 print函数可以输出多个值,多个值之间可以用,进行分割,输出的内容之间默认以空格公开