一、内置函数bin()、oct()和hex()用来将整数转换为二进制、八进制和十六进制形式,这三个函数都要求参数必须为整数。
把数字转换为二进制
>>> bin(111) '0b1101111'
转换为八进制
>>> oct(111) '0o157'
转换为十六进制
>>> hex(111) '0x6f'
二、内置函数float()用来将其他类型数据转换为实数,complex()可以用来生成复数
把整数转换为实数
>>> float(3) 3.0
把数字字符串转换为实数
>>> float('5.6') 5.6
复数指定实部
>>> complex(3) (3+0j)
指定实部和虚部
>>> complex(3,5) (3+5j)
三、ord()用来返回单个字符的Unicode码,而chr()则用来返回unicode编码对应的字符,str可直接将任意类型的参数转化为字符串。
查看指定字符的Unicode编码
>>> ord('a') 97
返回数字65对应的字符 Python不允许字符串和数字之间的加法操作!!!
>>> chr(65) 'A'
将任意类型参数转换为字符串
>>> str(1234) '1234' >>> str([1,2,3,4]) '[1, 2, 3, 4]' >>> str((1,2,3,4)) '(1, 2, 3, 4)' >>> str({1,2,3,4}) '{1, 2, 3, 4}'
set()把其他类型的数据转换为集合并自动去除重复
>>> set('11223344') {'4', '1', '2', '3'}
四、eval()用来计算字符串的值在有些场合也可用来实现类型转换的功能
计算
>>> eval('3-5') -2
把数字字符串转化为数字
>>> eval('9') 9
下面是一个可能会犯的一个错误
>>> eval('01') Traceback (most recent call last): File "<pyshell#22>", line 1, in <module> eval('01') File "<string>", line 1 01 ^ SyntaxError: invalid token
异常的原因是不允许以0开头的数字
五、内置函数type()用来判断数据的类型
判断[3]的类型
>>> type([3]) <class 'list'>
浙公网安备 33010602011771号