python的标识符:任意长度的非空字符序列,包括一个引导字符,0个或者多个后续字符.
- 引导字符:任何Unicode编码的字符,包括ASCII字母(小写/大写字母),下划线(_),或者其他大多数非英文字母. - 后续字符:任意引导字符,含数字. -标识符不可以与关键字同名 - 标识符去分大小写 - 避免在标识符开头和结尾使用__,因为这是python内部定义特殊方法与变量的做法. Integral类型python提供两种内置Integral类型,int(整数)和bool(布尔值).
在bool里面,o与False表示False.其他任意整数与True表示True.
在int里面,False表示0,True表示1.
int整数大小只受机器内存大小限制.整数默认采用的是10进制,也可以直接使用其他进制.
>>> 12 12 >>> 0b11 3 >>> 0o11 9 >>> 0xAc 172可见:
0b表示二进制,0o表示八进制,0x表示十六进制.
接下来是数字类型的操作符与函数运算.
>>> 2 + 2 4 >>> 2 * 2 4 >>> 6 / 3 2.0 >>> 6.2 /2 3.1 >>> 9 - 2 7 >>> 8 % 3 2 >>> 8.8 // 2 4.0 >>> 8 // 2 4 >>> 2 ** 3 8 >>> - 2 -2 >>> + 2 2 >>> abs(-11.02) 11.02 >>> >>> divmod(9,2) (4, 1) >>> pow(2,3) 8 >>> pow(2,3,3) 2 >>> round(2.888,2) 2.89 知识点 1. x / y : 总是返回一个浮点数 2. x // y : 返回计算结果舍去后面的小数. 3. x ** y : 返回x的y次幂 4. abs(x) : 返回x的绝对值 5. divmod(x,y) : 以二元组形式返回x/y的商与余数. 6. pow(x,y) : 返回x的y次幂,类似x**y 7. pow(x,y,z) : 返回pow(x,y)%z 8. round(x,y) : 按照指定返回的n个小数位,并进行四舍五入.整数的转换函数:
>>> bin(24) '0b11000' >>> hex(24) '0x18' >>> int(-14) -14 >>> int(0.01) 0 >>> int('ss') Traceback (most recent call last):File "<pyshell#34>", line 1, in <module> int('ss') ValueError: invalid literal for int() with base 10: 'ss' >>> int(2.8) 2 >>> int("20") 20 >>> int("2626",20) 18446 >>> int("20",2) Traceback (most recent call last):File "<pyshell#39>", line 1, in <module> int("20",2) ValueError: invalid literal for int() with base 2: '20' >>> int("20.3") Traceback (most recent call last):File "<pyshell#40>", line 1, in <module>int("20.3") ValueError: invalid literal for int() with base 10: '20.3' >>> oct(24) '0o30' 知识点 1. bin(x) : 返回字符串形式的整数x的二进制数. 2. hex(x) : 返回字符串形式的整数x的十六进制数 3. int(x) : 把对象x转为整数,如果是浮点数那么就取整数,如果转换失败,会产生ValueError异常,如果x不知道怎么转换到整数就会报出TypeError异常. 4. int(s,x) : x可以指定基础(2~36之间的整数),把整数型字符型s转为整数.转换失败抛出ValueErroe异常. 5. oct(x): 返回字符串形式的x的八进制数整数当作也可以进行位元素:
>>> 2 | 3 3 >>> 2 ^ 3 1 >>> 2 & 3 2 >>> 2 << 3 16 >>> 2 >> 3 0 >>> ~ 2 -3 布尔值python有两个内置bool类型对象,False,True.
>>> x = True >>> y = False >>> x and y False >>> x and True True >>> x or y True >>> not x False 知识点 1. and :表示同时为True,返回True 2. or : 表示一个为True,返回True 3. not : 表示非(反过来) 浮点类型python提供了三种浮动类型:
1. 内置的float,complex. 2. 来自标准库的decimal.Decimalfloat : 存放双精度的浮点值.取值范围依赖于构造python的编译器.由于精度问题,不适合进行比较.使用float函数会把整数变为浮点数.
>>> 2.2 2.2 >>> -2e9 -2000000000.0python支持缓和运算.int与float运算返回float,float与complex运算返回complex,decimal.Decimal是混合精度,只能与decimal.Decimal或者intS运算.使用不兼容的类型运算会产生TypeError异常.
float.hex(12.2)
‘0x1.8666666666666p+3’
float.fromhex(‘0x1.8666666666666p+3’)
12.2
知识点: float.hex() : 把整数返回字符串形式的十六进制. float.fromhex(); 把字符串形式的十六进制返回浮点数math模块提供了更多的float运算.
1. math.acos(x) : 返回弧度x的反余弦值 2. math.acosh(x) : 返回弧度x的反正切值 3. math.asin(x) : 返回弧度x的反正弦值 4. math.asinh(x) : 返回弧度x的反双曲正弦值 5. math.atan(x) : 返回弧度x的反正切值 6. math.atan2(y,x) : 返回y/x的反正切 7. math.atanh(x) : 返回x的反双曲正切 8. math.ceil(x) : 返回>=x的最小整数(向上取整) 9. math.copysign(x,y) : 把x的符合设置为y的符合 10. math.cos(x) : 返回弧度x的余弦 11. math.cosh(x) : 返回弧度x的余弦值(角度) 12. math.degrees(r) : 把浮点数r转为角度 13. math.e : 常数e 14. math.exp(x) : 返回math.e ** x 15. math.fabs(x) : 返回浮点数做的绝对值 16. math.floor(x) : 返回<= x 的最小整数(向下取整) 17. math.fmod(x,y) : 生成x除于y的模(余数) 18. math.frexp(x) : 返回一个二元组,分别为x的指数部分(整数形式),与假数部分(浮点数形式) 19. math.pi: 常量PI 20. math.sqrt(x) : 返回x的平方根 ... 复数一种固定数据类型,有自己的格式:
复数有两个部分:虚数部分和实数部分
实数部分通过+/-接虚数部分(以j字母结尾). 实数部分为0可以忽略. python里面的十进制数字decimal.Decimal由于浮点数的精确性不好,即便他的计算速度快,仍然不能满足我们的需要,我们为了完全的精确性可以使用decimal模块,decimal模块提供了固定的十进制数,精度可以自由控制.
>>> import decimal >>> a = decimal.Decimal(80) >>> b = decimal.Decimal("62.00000456") >>> a + b Decimal('142.00000456') 知识点 1. 十进制数是由decimal.Decimal()创建,该方法接受一个整数或者字符串为参数,不接受字符串(不精确) 字符串str字符串使用固定str数据类型表示,存放Unicode字符系列,str可以用于函数调用,创建str对象.
>>> text = """aaaa aaaaaaa""" >>> txt = "poop" + \ "le" >>> txt 'poople' >>> tx = ("per" "son") >>> tx 'person' 知识点1. 三引号包括的字符串可以进行跨行. 2. 通过 + \ 来拆分字符串达到跨行 3. 通过()包住拆分的字符串进行跨行