日期:
来源:雷子说测试开发收集编辑:雷子V
上篇文章:
本次分享在Python数据类型转换
正文
在工作中,经常会遇到数据类型的转化。今天看一下常用的数据类型转化的内部的函数。
x转换为一个整数
>>> a='1'
>>> int(a)
1
#如果转化后的类型不符合,报错
>>> b='a'
>>> int(b)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: invalid literal for int() with base 10: 'a'
将x转换到一个浮点数
>>> a=1
>>> float(a)
1.0
#如果不能转
>>> b='a'
>>> float(b)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: could not convert string to float: 'a'
创建一个复数
>>> complex(a)
(1+0j)
>>> complex(1)
(1+0j)
>>> complex(2)
(2+0j)
>>> complex(3.2)
(3.2+0j)
转成字符串
>>> a=1
>>> str(a)
'1'
>>> b=float('1')
>>> str(b)
'1.0'
将对象 x 转换为表达式字符串
>>> s='aa'
>>> repr(s)
"'aa'"
注意这两个的不同
>>> repr(s)
"'aa'"
>>> str(s)
'aa'
这两个类型不一样,通常用的str,repr 转化一般用在想要保留原始的。一般常用str
用来计算在字符串中的有效Python表达式,并返回一个对象
>>> a=7
>>> eval('a*7')
49
>>> eval('2+2')
4
>>> eval('{"a":1}')
{'a': 1}
这个在实际中,经常用到的是 eval str转成dict,很常用。
转化成元组
>>> clistone=['1']
>>> tuple(clistone)
('1',)
转成list
>>> a=(1,)
>>> list(a)
[1]
转化成可变集合
>>> a=set('rooe')
>>> a
{'o', 'e', 'r'}
#重复的会被删除
>>> b='123221'
>>> set(b)
{'2', '3', '1'}
转化成字典
>>> dict() #创建空的
{}
>>> dict(a=1)# 传入关键字
{'a': 1}
>>> dict(zip(['one'],[1])) # 映射函数方式来构造字典
{'one': 1}
创建一个不可变的集合
>>> a = frozenset(range(10))
>>> a
frozenset({0, 1, 2, 3, 4, 5, 6, 7, 8, 9})
将一个整数转换为一个字符
>>> chr(0*30)
'\x00'
将一个字符转换为它的整数值
>>> ord('a')
97
>>> ord('b')
98
转化成16进制
>>> hex(1)
'0x1'
转化成八进制
>>> oct(1)
'0o1'
以上列举了一些转化的,在实际中,我感觉比较常用的是int,float,str,dict,eval等。这些掌握到熟练,其他的做到会用即可。
发现问题,解决问题。遇到问题,慢慢解决问题即可。
欢迎关注雷子说测试开发,后续将会持续为大家分享更多的技术知识
如果觉得这篇文章还不错,来个【分享、点赞、在看】三连吧,让更多的人也看到~