前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【测试开发】python系列教程:Python数据类型转换

【测试开发】python系列教程:Python数据类型转换

作者头像
雷子
发布2022-12-29 19:41:22
3230
发布2022-12-29 19:41:22
举报

上篇文章:

【测试开发】python系列教程:标准数据类型(六)字典

本次分享在Python数据类型转换


正文

在工作中,经常会遇到数据类型的转化。今天看一下常用的数据类型转化的内部的函数。

x转换为一个整数

代码语言:javascript
复制
>>> 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转换到一个浮点数

代码语言:javascript
复制
>>> 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'

创建一个复数

代码语言:javascript
复制
>>> complex(a)
(1+0j)
>>> complex(1)
(1+0j)
>>> complex(2)
(2+0j)
>>> complex(3.2)
(3.2+0j)

转成字符串

代码语言:javascript
复制
>>> a=1
>>> str(a)
'1'
>>> b=float('1')
>>> str(b)
'1.0'

将对象 x 转换为表达式字符串

代码语言:javascript
复制
>>> s='aa'
>>> repr(s)
"'aa'"

注意这两个的不同

代码语言:javascript
复制
>>> repr(s)
"'aa'"
>>> str(s)
'aa'

这两个类型不一样,通常用的str,repr 转化一般用在想要保留原始的。一般常用str

用来计算在字符串中的有效Python表达式,并返回一个对象

代码语言:javascript
复制
>>> a=7
>>> eval('a*7')
49
>>> eval('2+2')
4
>>> eval('{"a":1}')
{'a': 1}

这个在实际中,经常用到的是 eval str转成dict,很常用。

转化成元组

代码语言:javascript
复制
>>> clistone=['1']
>>> tuple(clistone)
('1',)

转成list

代码语言:javascript
复制
>>> a=(1,)
>>> list(a)
[1]

转化成可变集合

代码语言:javascript
复制
>>> a=set('rooe')
>>> a
{'o', 'e', 'r'}
#重复的会被删除
>>> b='123221'
>>> set(b)
{'2', '3', '1'}

转化成字典

代码语言:javascript
复制
>>> dict() #创建空的
{}
>>> dict(a=1)# 传入关键字
{'a': 1}
>>> dict(zip(['one'],[1])) # 映射函数方式来构造字典
{'one': 1}

创建一个不可变的集合

代码语言:javascript
复制
>>> a = frozenset(range(10))
>>> a
frozenset({0, 1, 2, 3, 4, 5, 6, 7, 8, 9})

将一个整数转换为一个字符

代码语言:javascript
复制
>>> chr(0*30)
'\x00'

将一个字符转换为它的整数值

代码语言:javascript
复制
>>> ord('a')
97
>>> ord('b')
98

转化成16进制

代码语言:javascript
复制
>>> hex(1)
'0x1'

转化成八进制

代码语言:javascript
复制
>>> oct(1)
'0o1'

以上列举了一些转化的,在实际中,我感觉比较常用的是int,float,str,dict,eval等。这些掌握到熟练,其他的做到会用即可。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2022-10-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 雷子说测试开发 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档