1、二进制,十进制,十六进制计数
>>> 0b1,0o20,0xFF
(1, 16, 255)
十进制转换成相应进制字符串
>>> bin(64),oct(64),hex(64)
('0b1000000', '0o100', '0x40')
字符串转换成int
>>> int('64'),int('100',8),int('40',16),int('100000',2)
(64, 64, 64, 32)
eval函数
>>> eval('64'),eval('0o100'),eval('0x40'),eval('0b10000')
(64, 64, 64, 16)
格式化输出
>>> '{0:o},{1:x},{2:b}'.format(64,64,64)
'100,40,1000000'
>>> '%o,%x,%X'%(64,255,255)
'100,ff,FF'
小数精度
>>> 0.1+0.1+0.1-0.3
5.551115123125783e-17
>>> from decimal import Decimal
>>> Decimal('0.1')+Decimal('0.1')+Decimal('0.1')-Decimal('0.3')
Decimal('0.0')
设置精度
>>> import decimal
>>> decimal.getcontext().prec=4
>>> decimal.Decimal(1)/decimal.Decimal(7)
Decimal('0.1429')
分数
>>> x=Fraction(1,3)
>>> y=Fraction(4,6)
>>> x
Fraction(1, 3)
>>> y
Fraction(2, 3)
>>> print(x,y)
1/3 2/3
>>> Fraction('.25')
Fraction(1, 4)
>>> Fraction('1.25')
Fraction(5, 4)
>>> Fraction('.25')+Fraction('1.25')
Fraction(3, 2)
分数小数之间的转换
>>> from fractions import Fraction
>>> (2.5).as_integer_ratio()
(5, 2)
>>> f=2.5
>>> z=Fraction(f.as_integer_ratio())
>>> z=Fraction(*f.as_integer_ratio())
>>> z
Fraction(5, 2)
>>> float(z)
2.5
>>> z=Fraction(*(f.as_integer_ratio()))
>>> z
Fraction(5, 2)