笔记-2:python基本数据类型
1.数字类型
1.1 整数类型
- 整数类型有4种进制表示:十进制,二进制,八进制,十六进制,默认情况下,整数采用十进制。
- 整数类型有4种进制:十进制、 二进制、 八进制和十六进制。 默认情况, 整数采用十进制, 其他进制需要增加引导符号 。
- 进制的表示:
进制种类 | 引导符合 | 描述 |
十进制 | 不需要符号表示 | 1010 |
二进制 | 0b或0B,由字符0和1组成 | 0b1010,0B1010 |
八进制 | 0o或0O,由字符0到7组成 | 0o1010,0O1010 |
十六进制 | 0x或0X,由字符0到9,a到f或A到F组成 | 0x1010 |
- 进制转换:
# 十进制====>二进制 print(bin(10)) # 十进制====>八进制 print(oct(10)) # 十进制====>十六进制 print(hex(10)) # 二/八/十六进制====>十进制 print(int(0b1010)) # 8进制的10转换成十进制数并输出结果。8可以是2、8,10,16等进制数 print(int("10",8))
1.2 浮点数类型
- python中的浮点数类型必须带有小数部分,小数部分可以是0,例:1010是整数,1010.0是浮点数。
- 浮点数一般使用十进制和科学计数法表示。例:1010.0,-1010.0,1.01e3,-1.01E-3
- 科学计数法使用字母e或E作为幂的符号,以10位基数,如:<a>e<b>=a*10b,1.01e3=1.01*103,-1.01E-3=1.01*10-3
一般形式:1010.0,-1010.0 科学计数法:使用字母e或者E作为幂的符号,以10为基数。 <a>e<b> = a*10b次方 例:1.01e3=101*10的3次方 -1.01E3=-1.01*10的3次方
1.3 复数类型
-
复数类型表示数学中的复数。 复数有一个基本单位元素j, 叫作“虚数单位” 。 含有虚数单位的数被称为复数。
-
复数表示为: a + bj, 其中, a是实数部分,简称实部, b是虚数部分, 简称虚部。
-
虚数部分通过后缀“J”或者“j”来表示。
-
当b为1时,1不能省略, 即 1j表示复数, 而j则表示Python程序中的一个变量。
-
复数类型中实部和虚部都是浮点类型 。
-
使用real和imag分别获得它的实数部分和虚数部分
a = 10 + 10j print(a.real) print(a.imag) print(1.23 + a.imag) # 先获得复数a的虚部,再与1.23相加。虚部,再与1.23相加。
2.数值运算
2.1 算术运算符
print(1 + 1) # 加分运算 print(1 - 1) # 减法运算 print(2 * 2) # 乘法运算 print(2 / 2) # 除法运算 print(2.5 // 2) # 取整 print(2.5 % 2) # 取余 print(2 ** 2) # 幂运算
2.2 比较运算符
print(10 == 6) #等于 print(10 != 6) # 不等于 print(10 > 6) # 大于 print(10 < 6) # 小于 print(10 >= 6) # 大于等于 print(10 <= 6) # 小于等于
2.3 赋值运算符
a = 12 b = 2 b = a + b # 简单赋值运算符 print(b) a += b # 加法赋值运算符 print(a) a -= b # 减法赋值运算符 print(a) a *= b # 乘法赋值运算符 print(a) a /= b # 除法赋值运算符 print(a) a %= b # 取余赋值运算符 print(a) a //= b # 取整赋值运算符 print(a)
2.4 逻辑运算符
1.and "有一个为False,则返回False" a = True b = True c = True if a and b and c: print('a,b,c都为True') else: print('a,b,c有一个为False') # result:a,b,c都为True 2.or "有一个为True,则返回True" a = True b = False c = False if a or b or c: print('a,b,c中至少有一个True') else: print('a,b,c都为False') # result:'a,b,c中至少有一个True' 3.not "相返值" if not(False): print(True) else: print(False) # result:True
2.5 成员运算符
-in "x 在 y 序列中 , 如果 x 在 y 序列中返回 True" a = [1,2,3] print(4 in a) # result:False print(2 in a) # result:True -not in "x 不在 y 序列中 , 如果 x 不在 y 序列中返回 True" print(4 not in a) # result:True print(2 not in a) # result:False
2.6 身份运算符
a = 20 b = 20 if ( a is b ): print ("a 和 b 有相同的标识") else: print ("a 和 b 没有相同的标识") # result:"a 和 b 有相同的标识" if ( id(a) == id(b) ): print ("a 和 b 有相同的标识") else: print (" a 和 b 没有相同的标识") # result:"a 和 b 有相同的标识" # 修改变量 b 的值 b = 30 if ( a is b ): print ("a 和 b 有相同的标识") else: print ("a 和 b 没有相同的标识") # result:a 和 b 没有相同的标识 if ( a is not b ): print ("a 和 b 没有相同的标识") else: print ("a 和 b 有相同的标识") # result:a 和 b 没有相同的标识
2.7 优先级
3.数值运算函数
>>> abs(-2.5) # 绝对值 2.5 >>> divmod(2,2) # divmod(x//y,x%y),输出二元组 (1, 0) >>> pow(2,2) # x**y,与幂运算相同 4 >>> round(2.55,1) # 四舍五入,对2.55保留1位小数, 2.5 >>> max(1,2,5) # 最大值 5 >>> min(1,2,5) # 最小值 1