关于Python的数字

  • 包括:整数和浮点数、复数、固定精度的十进制数、有理分数、集合、布尔类型、无穷的整数精度、各种数字内置函数和模块
  • 整数拥有无穷精度,浮点数为C语言的双精度,0b开头为二进制,0o开头为八进制,0x开头为十六进制,a+bj表示复数
  • Python表达式操作符
    优先级为由下至上,同一行为左到右。幂运算为右到左,比较运算为左到右连接
yield x 生成器函数发送协议
lambda args : expression 生成匿名函数
x if y else z 三元选择表达式
x or y 逻辑或(只有x为假,才会计算y)
x and y 逻辑与(只有x为真,才会计算y)
not x 逻辑非
x in y , x not in y 成员关系(可以迭代对象、集合)
x is y , x is not y 对象实体测试
x < y , x <= y , x > y , x >= y , x == y , x != y 大小比较,集合子集和超集值相等性操作符
x | y 位或,集合并集
x ^ y 位异或,集合对称差
x & y 位与,集合交集
x >> y , x << y 左移或右移y位
x + y , x – y 加法/合并,减法,集合差集
x * y , x % y , x / y , x // y 乘法/重复,余数/格式化,除法:真除法或floor除法
+x , -x 一元加法,识别
~x 按位求补(取反)
x ** y 幂运算
x[i] 索引(序列、映射及其他)点号取属性运算,函数调用
x[i:j:k] 分片
x(…) 调用(函数、方法、类及其他可调用的)
x.attr 属性引用
(…) 元组,表达式,生成器表达式
[…] 列表,列表解析
{…} 字典、集合、集合和字典解析
  • 比较运算可以连续起来(从左到右,用逻辑与规则)
    >>> x < y < z
    True
  • 除法运算分真除法和floor除法
    真除法保留小数部分
    >>> 10 / 4
    2.5
    floor除法截除掉小数部分,返回的类型由操作数类型决定,可能位浮点数
    注意他是floor而不是trunc,为向下舍入,所以负数会变小
    >>>10 / 4
    2
    >>>10 / -4
    -3
  • 位运算与C语言的一样,<< 和 >> 是二进制移位, | 和 & 是二进制或和与的比较
  • 内置数学工具由import math导入,比如math.pi圆周率、pow()幂运算、abs()绝对值、math.round等等
  • 还有随机模块,用import random导入,random.random()使用,得到一个0到1的数字,也可以加入选择间隔
  • decimal模块可以管理小数,decimal.Decimal(),设定小数精度,也可以设定舍入模式
  • Fraction模块用来使用分数,Fraction(1,2)这样
  • 集合

转载需保留链接来源:VCBeta.CN » 关于Python的数字

赞 (0)