ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

python之数据类型转换

2022-08-27 21:33:33  阅读:167  来源: 互联网

标签:类型转换 python int num 字符串 str print -- 数据


一、隐式类型转换
隐式类型转换 - 自动完成

我们对两种不同类型的数据进行运算,较低数据类型(整数)就会转换为较高数据类型(浮点数)以避免数据丢失

num_int = 123
num_flo = 1.23

num_new = num_int + num_flo

print("datatype of num_int:",type(num_int))
print("datatype of num_flo:",type(num_flo))

print("Value of num_new:",num_new)
print("datatype of num_new:",type(num_new))

查看运行结果:

 

二、显式类型转换

显式类型转换 - 需要使用类型函数来转换

整型和字符串类型运算结果会报错,输出 TypeError。 Python 在这种情况下无法使用隐式转换,我们使用 int()、float()、str() 等预定义函数来执行显式类型转换

num_int = 123
num_str = "456"

print("num_int 数据类型为:",type(num_int))
print("类型转换前,num_str 数据类型为:",type(num_str))

num_str = int(num_str)    # 强制转换为整型
print("类型转换后,num_str 数据类型为:",type(num_str))

num_sum = num_int + num_str

查看运行结果:

 

三、数据类型之间的转换内置函数
1.int(x [,base])
(1)作用:将x转换为一个整数
(2)语法:class int(x, base=10),base为进制数,默认十进制,若 x 不符合 base 规则,则报错
(3)实例:

#3.int(x [,base])
print(int(3.6))
print(int("1001",2))
print(int("0xa",16))

查看运行结果:

 

2.float(x)
(1)作用:用于将整数和字符串转换成浮点数。
(2)语法:float([x]),x -- 整数或字符串
(3)实例:

#2.float(x)
str1 = "3.14"
str2 = 2
f1 = float(str1)
f2 = float(str2)
print(f1,f2)

 查看运行结果:

 

3.complex(real [,imag])

(1)作用:创建一个值为 real + imag * j 的复数或者转化一个字符串或数为复数。如果第一个参数为字符串,则不需要指定第二个参数。。
(2)语法:complex([real[, imag]]),real -- int, long, float或字符串;imag -- int, long, float;
(3)实例:

#3.complex(real [,imag])
c1 = complex(1,2)
c2 = complex(3)
print(c1,c2)

查看运行结果:

 

4.str(x)
(1)作用:将对象转化为适于人阅读的形式。
(2)语法:str(object=''),返回一个对象的string格式
(3)实例:

 

#4.str(x)
s1 = 'python'
s2 = {'python': 'python.com', 'google': 'google.com'}
print(str(s1),str(s2))

查看运行结果:

 

5.repr(x)
(1)作用:将对象转化为供解释器读取的形式。
(2)语法:repr(object),返回一个对象的 string 格式
(3)实例:

#5.repr(x)
s1 = 'python'
s2 = {'python': 'python.com', 'google': 'google.com'}
print(repr(s1),repr(s2))

查看运行结果:

 

6.eval(str)
(1)作用:用来执行一个字符串表达式,并返回表达式的值
(2)语法:eval(expression[, globals[, locals]]);expression -- 表达式;globals -- 变量作用域,全局命名空间,如果被提供,则必须是一个字典对象;locals -- 变量作用域,局部命名空间,如果被提供,可以是任何映射对象。
(3)实例:

#6.eval(str)
x,y= 1,2
e1 =eval('3 * x')
e2 =eval('pow(2,3)')
e3 =eval('y+10')
print(e1,e2,e3)

查看运行结果:

 

7.tuple(s)
(1)作用:将可迭代系列(如列表)转换为元组
(2)语法:tuple( iterable );返回元组。(可以将字符串,列表,字典,集合转化为元组)
(3)实例:

#7.tuple(x)
l1 = ['python', 'ruby', 'golang', 'java']
t1 = tuple(l1)
print(t1)

查看运行结果:

 

 8.list(s)

(1)作用:将元组或字符串转换为列表;元组与列表是非常类似的,区别在于元组的元素值不能修改,元组是放在括号中,列表是放于方括号中
(2)语法:list( seq ),seq -- 要转换为列表的元组或字符串
(3)实例:

#8.list(x)
t1 = (123, 'Google', 'Python', 'Taobao')
l1 = list(t1)
s1 = "hello"
l2 = list(s1)
print(l1,l2)

查看运行结果:

 

9.set(s)

(1)作用:创建一个无序不重复元素集,可进行关系测试,删除重复数据
(2)语法:set([iterable]),返回新的集合对象
(3)实例:

# 9.set(x)
l1 = ['a', 'b', 'b', 'c', 'c', 'c']
s1 = set(l1)
print(s1)

查看运行结果:

 

10.dict(d)
(1)作用:创建一个字典,d 必须是一个 (key, value)元组序列
(2)语法:dict(**kwarg),dict(mapping, **kwarg),dict(iterable, **kwarg),**kwargs -- 关键字,mapping -- 元素的容器,映射类型(Mapping Types)是一种关联式的容器类型,它存储了对象与对象之间的映射关系,iterable -- 可迭代对象
(3)实例:

#10.dict(d)
d1 = dict(a='a', b='b', t='t') #传入关键字
d2 = dict(zip(['one', 'two', 'three'], [1, 2, 3])) #映射函数方式来构造字典
d3 = dict([('one', 1), ('two', 2), ('three', 3)]) #可迭代对象方式来构造字典
print(d1)
print(d2)
print(d3)

查看运行结果:

 

11.frozenset(s)
(1)作用:返回一个冻结的集合,冻结后集合不能再添加或删除任何元素
(2)语法:frozenset([iterable]);iterable -- 可迭代的对象,比如列表、字典、元组等等。返回新的 frozenset 对象,如果不提供任何参数,默认会生成空集合。
(3)实例:

#11.frozenset(s)
f1 = frozenset(range(10))
f2 = frozenset(['h','e','l','l','0'])
print(f1)
print(f2)

查看运行结果:

 

12.chr(x)
(1)作用:用一个范围在 range(256)内的(就是0~255)整数作参数,返回一个对应的字符
(2)语法:chr(i);i -- 可以是10进制也可以是16进制的形式的数字。返回值是当前整数对应的 ASCII 字符。
(3)实例:

#12.chr(x)
print(chr(0x30), chr(0x31), chr(0x61)) # 十六进制
print(chr(48), chr(49), chr(97)) # 十进制

查看运行结果:

 

 

13.ord(x)
(1)作用: chr() 函数(对于8位的ASCII字符串)或 unichr() 函数(对于Unicode对象)的配对函数,它以一个字符(长度为1的字符串)作为参数,返回对应的 ASCII 数值,或者 Unicode 数值,如果所给的 Unicode 字符超出了你的 Python 定义范围,则会引发一个 TypeError 的异常
(2)语法:ord(c);c -- 字符。返回值是对应的十进制整数。
(3)实例:

#13.ord(c)
o1 = ord('a')
o2 = ord('b')
o3 = ord('c')
print(o1,o2,o3)

查看运行结果:

 

14.hex(x)
(1)作用:用于将10进制整数转换成16进制,以字符串形式表示。
(2)语法:hex(x);返回16进制数,以字符串形式表示。
(3)实例:

#14.hex(x)
print(hex(255),hex(-42),hex(1),hex(12),type(hex(12)))

查看运行结果:

 

15.oct(x)
(1)作用:将一个整数转换成 8 进制字符串。Python3.x 版本的 8 进制以 0o 作为前缀表示
(2)语法:oct(x);x -- 整数。返回 8 进制字符串。
(3)实例:

#15.oct(x)
o1 = oct(10)
o2 = oct(20)
o3 = oct(15)
print(o1,o2,o3)

查看运行结果:

 

 

 

 

标签:类型转换,python,int,num,字符串,str,print,--,数据
来源: https://www.cnblogs.com/mrwhite2020/p/16614549.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有