python数据类型转换总结

数据类型转换
函数描述说明
int(x[,base])将x转为整数
float(x)将x转为浮点数
complex(real[,imag])创建一个复数,real为实部,imag为虚部
str(x)将对象x转为字符串
repr(x)将对象x转为表达式字符串
eval(str)用来计算在字符串中的有效Python表达式,并返回表达式的值
tuple(s)将序列s转为一个元组,s可为元组、列表、字典等
list(s)将序列s转为一个列表
chr(x)将一个整数x转为一个Unicode字符,返回值是当前整数对应的 ASCII 字符
ord(x)将一个字符x转为对应ASCII整数值,返回值是当前字符对应的十进制整数
hex(x)将整数x转为十六进制字符串
oct(x)将整数x转为八进制字符串
bin(x)将整数x转为二进制字符串
set(s)将序列s转为可变集合,&、|、-表示集合间的交、并、差运算

举例如下:

num = input('请输入数字:')  # 输入的数据均为字符串类型
print(num, type(num), type(int(num)), type(float(num)), str(num), type(str(num))) # 输出num值及其转换后的数据类型
num1 = complex(3, 3)  # 创建一个实部和虚部都为3的复数
print(num1)
print(repr(num), type(repr(num)))  # 将num转为表达式字符串,3即'3'
print(eval('2*num'),type(eval('2*num')), eval('2'+num), type(eval('2'+num)))  # 不能写为’2+num‘,2为int型,num为str型

print('----------列表、元组、字典、集合------------')
a = [1, 2, 3, 'X', 'Y']
b = {1:2, 3:4, 'X':'Y'}
c = (1, 2, 3, 'X', 'Y')
print(type(a),type(b),type(c))  # a列表,b字典,c元组
print(tuple(a),tuple(b),tuple(c)) # 输出均为元组,其中字典返回key组成的元组
print(list(a),list(b),list(c))  # 输出均为列表,其中字典返回key组成的列表
print(set(a),set(b),set(c))  # 输出均为集合,其中字典返回key组成的集合
print(set(a)&set(b),set(a)|set(b),set(a)-set(b))  # 集合的 交集、并集、差集

print('----------------创建字典-----------------')
print({'a': 1, 'b': 2})  # 直接法
print(dict(a='a', b='b', c='c'))  # 传入关键字参数方式
print(dict(zip(['a', 'b', 'c'], [1, '2', 3])))  # 映射函数方式
print(dict(zip('abc', [1, '2', 3])))  # 映射函数方式
print(dict([('aa', 11), ('bb', '22'), ('cc', 33)], dd=44))  # 可迭代对象方式
print({i: i*2 for i in range(1, 5)})  # 字典推导式
d = dict()
for i in range(1, 5):
    d[i] = i**2
print(d)

print('----------------------')
print(chr(97),type(chr(97)))  # 输出97对应的ASCII字符,即a,类型为字符型
print(ord('a'),type(ord('a')))  # 输出ASCII字符a对应的整数,即97,类型为整型
print(bin(10), oct(10), hex(10))  # 输出整数10的二进制、八进制、十六进制

输出:
请输入数字:3
3 <class 'str'> <class 'int'> <class 'float'> 3 <class 'str'>
(3+3j)
'3' <class 'str'>
33 <class 'str'> 23 <class 'int'>
----------列表、元组、字典、集合------------
<class 'list'> <class 'dict'> <class 'tuple'>
(1, 2, 3, 'X', 'Y') (1, 3, 'X') (1, 2, 3, 'X', 'Y')
[1, 2, 3, 'X', 'Y'] [1, 3, 'X'] [1, 2, 3, 'X', 'Y']
{1, 2, 3, 'Y', 'X'} {1, 3, 'X'} {1, 2, 3, 'Y', 'X'}
{1, 3, 'X'} {1, 2, 3, 'Y', 'X'} {2, 'Y'}
----------------创建字典-----------------
{'a': 1, 'b': 2}
{'a': 'a', 'b': 'b', 'c': 'c'}
{'a': 1, 'b': '2', 'c': 3}
{'a': 1, 'b': '2', 'c': 3}
{'aa': 11, 'bb': '22', 'cc': 33, 'dd': 44}
{1: 2, 2: 4, 3: 6, 4: 8}
{1: 1, 2: 4, 3: 9, 4: 16}
----------------------
a <class 'str'>
97 <class 'int'>
0b1010 0o12 0xa

导航:http://xqnav.top/

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

learning-striving

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值