Number类型
数值类型,通常用于存储数值,是最常用的变量类型;
Python中的数值类型包括如下种类:Integer
、Long integer
、Boolean
、Double-precision floating
、Complex number
。
Integer 整型
相当于C中的long
;
32 位机器,整型位宽位 32 Bit:- 2^31
~2^31 - 1
,即-2 147 483 648
~ 2 147 483 627
64 位机器,整型位宽为 64 Bit:- 2^63
~2^63 - 1
,即-9 223 372 036 854 775 808
~ 9 223 372 036 854 775 807
a = 12 #正整数
b = -405 #负整数
c = 0x3A #十六进制表示的正整数
Long integer 长整型(#3.x版本已经取消long类型并重命名为int)
数值后面以
l
或L
(大小写L,勿与数字1
混淆)结尾。
长整型没有指定位宽,Python没有限制长整型数值的大小,但在实际开发中,机器的内存有限,因此也不存在无限大的长整型整数
a = 3897987L
b = -524327987l
c = 0xA32B9DDL
Boolean 布尔型
判断使用,只有两个值
True
和False
a = False
b = True
Double-precision floating 双精度浮点型
可以用直接的十进制或者科学计数法表示,每个浮点数占 8 个字节。
浮点数值通常都有一个小数点和一个可选的后缀e
(大小写皆可)。
在e
和指数之间可以使用正(+
)或负(-
)表示指数正负。
a = 1.32425
b = -40.
c = 3e8
Complex number 复数类型
可以指不实的数值或者并非表明具体数量的数字。
复数有实数部分和虚数部分构成,虚数部分必须有后缀j
或J
。
a = 98.234 + 3J
b = 0 - 23.4j
操作符
算术操作符——只记录了与其他语言不同的定义
操作符 | 含义 |
---|---|
A/B | 除法:B不能为0;整数相除仍为整数 |
A//B | 取整除:结果为A除以B后的结果的整数部分 |
A**B | 幂次操作:A的B次方 |
not A | 取反操作:只能用于Boolean类型 |
>>> 5 / 2
2
>>> 5.0 / 2
2.5
>>> 5.2 // 2
2
>>> 2 ** 3
8
>>> not True
False
比特操作符
操作符 | 含义 |
---|---|
~A | 按二进制取反;按照补码规则,结果为-(A+1)
|
A&B | 并操作:只有两个比特位都为1 时才设1 ,否则为0
|
A|B | 或操作:只要两个比特位有一个为1 时就设1 ,否则设0
|
A^B | 异或操作:两个比特位相同时,结果设1 ,否则设0
|
A>>B | A按比特位右移B位 |
A<<B | A按比特位左移B位 |
>>> ~ 30
-31
>>> 3 & 3
3
>>> 3 & 1
1
>>> 3 ^ 1
2
>>> 3 << 1
6
内置函数
通用函数
>>> cmp( 43 , 12.34) #比较大小:前者小返回-1,后者小返回1,相等返回0
-1
>>> cmp( 0 , -2)
1
>>> cmp(0x12 , 18)
0
>>> str( 0x20 ) #将参数转换为字符串类型并输出
32
>>> type( 4L ) #3.x版本已经取消long类型并重命名为int
<type 'long'>
>>> type( 45 + 8j )
<type 'complex'>
数值类型特定函数
>>> abs( -3 )
3
>>> coerce( 24 , -4.5 ) #3.0已经取消coerce的用法
(24.0 , -4.5)
>>> divmod( 5 , 2 ) #除模操作:生成一个元组,形式为(A/B , A%B)
( 2 , 1 )
>>> round( 5.7 ) #返回参数四舍五入的结果
6
>>> hex( 10 ) #将元素转换为十六进制表示的字符串(oct()八进制)
'0xA'
>>> chr( 0x32 ) #将元素转换为ASCII字符,括号内元素0~255之间
'2'
>>> pow( 10 , 2 ) #幂运算:A的B次方
100
Sequence类型簇
除了基本的数值类型,Python中的序列类型簇在Python编程中的地位十分重要。Python中的字符串(
String
)、元组(Tuple
)、列表(List
)都属于序列类型簇。
- 字符串:由字符组成的序列类型
- 元组:任意对象组成的不可修改序列类型
- 列表:任意对象组成的可修改序列类型
操作符
序列运算符
网友评论