标签:try lock seq 十进制 iter 二进制 etc 数据类型 数值类型
本系列例子使用python3.x, 编辑时间:2019-09-03,23:03:36
python以“对象引用”来存储数据,以对象来表达数据,每个对象都具有身份,对象和值。
实用函数:
num1, num2, num3 = eval(input("输入三个数,中间以逗号隔开:")) try: print(num1, num2, num3) except Exception as e: print("error: ", e) 运行结果: 输入三个数,中间以逗号隔开:17, 18, 19 17 18 19
常见的Python内置类型:
数据类型
1.整数类型:
进制转换函数:
dec_num = 255 # 十进制数 print(bin(dec_num)) # 二进制 输出"0b11111111" print(oct(dec_num)) # 八进制 输出"0o377" print(hex(dec_num)) # 十六进制 输出"0xff" bin_num = ‘0b‘ + ‘10101‘ print(int(bin_num, 2)) # 二进制转十进制 输出 21 num = 78 # 十进制数 print(format(num, ‘b‘)) # 输出二进制字符串 "1001110" print(format(num, ‘o‘)) # 输出八进制字符串 "116" print(format(num, ‘x‘)) # 输出十六进制字符串 "4e"
Bool(Boolean)为int的子类,可以使用bool()函数。它只有True和False两个值。
2.浮点数类型:
常用函数:
float_num = 71.235 # 定义浮点数 float_num_hex = float_num.hex() # 返回字符串形式的十六进制浮点数 print(float_num_hex) # 输出 "0x1.1cf0a3d70a3d7p+6" print(float.fromhex(float_num_hex)) # 转回十进制数 输出 71.235
特殊浮点数:
float(‘nan‘), float(‘Infinity‘), float(‘-inf‘)是三个特殊的浮点数,分别代表 非数字(Not a number),无穷大(Infinity), 负无穷大(Negative Infinity)
可以使用标准库 math 模块中的 isnan()判断是否为NaN数据,isinf()判断是否为inf或-inf数据
complex(re, im): re为real,实数;im为imagine,虚数,虚数部分需加上字符‘j’或‘J’
complex_num = 5 + 6j print(type(complex_num)) # 输出 <class ‘complex‘> print(complex_num.real) # 输出实数部分 5.0 print(complex_num.imag) # 输出虚数部分 6.0
from decimal import * print(Decimal(10/3)) # 输出 3.333333333333333481363069950020872056484222412109375 num_1 = Decimal(‘0.125‘); num_2 = Decimal(‘8.8888‘) # 使用字符串参数指定有效位数 print(num_1 + num_2) # 输出 9.0138 print(num_1 * num_2) # 输出 1.1111000 print(getcontext().prec) # 返回精确度 输出 28 getcontext().prec = 3 # 设置精确度 print(num_1 + num_2) # 输出 9.01 print(getcontext().rounding) # 返回舍入规则 输出 ROUND_HALF_EVEN getcontext().rounding = ROUND_FLOOR # 设置舍入规则为向负无穷大舍入 print(num_1 * num_2) # 输出 1.11
3.分数类型:
Fraction(numerator, denominator):
from fractions import Fraction num_1 = Fraction(12, 36) # 定义分数变量, 分子12,分母36 num_2 = Fraction(3, 7) print(num_1 + num_2) # 加法 输出 16/21 print(num_1 * num_2) # 乘法 输出 1/7 num_3 = Fraction(2.1, 3) # 报错: error: both arguments should be Rational instances(两个参数都应该是有理数)[由于计算机存储浮点数的方式,不能准确地储存浮点数]
本系列博客主要从《从零开始学Python程序设计》提取
标签:try lock seq 十进制 iter 二进制 etc 数据类型 数值类型
原文地址:https://www.cnblogs.com/exploer/p/11450714.html