首页 > 编程语言 >python之数据类型转换

python之数据类型转换

时间:2022-08-27 21:25:40浏览次数:59  
标签:类型转换 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,--,数据
From: https://www.cnblogs.com/mrwhite2020/p/16614549.html

相关文章

  • (WebFlux)003、多数据源R2dbc事务失效分析
    一、背景最近项目持续改造,然后把SpringMVC换成了SpringWebflux,然后把Mybatis换成了R2dbc。中间没有遇到什么问题,一切都那么的美滋滋,直到最近一个新需求的出现,打破了往日的......
  • Chapter2 登录和注册_页面之间的数据传递_云储存
    Chapter21.登录和注册(手机验证)1.1我的页面app.jsApp({​ /** *当小程序初始化完成时,会触发onLaunch(全局只触发一次) */ onLaunch:function(){......
  • 数据结构
    定义:数据结构是计算机存储、组织数据的方式。 数据结构是指相互之间存在着一种或多种关系的数据元素的集合和该集合中数据元素之间的关系组成。、 数据结构......
  • Python-——面向对象
    面向对象编程范式面向对象指的是一种编程范式;编程范式:可以理解为一种编程方式,编程规范,编程模式面向过程面向过程编程:是一种以过程为核心的编程,主要是在解决一个问题......
  • log4j升级到log4j2,并配合druid插入数据库
    2022元旦前报的全球Log4j日志严重漏洞问题,第一次报漏洞的时候我这边版本不在影响范围内,又过了两个月通知我:公司要求全部更新到最新版log4j2。当时正烦躁在别的项目,于是就......
  • python中encode+decode编码解码
    encode()方法的语法格式:str.encode([encoding="utf-8"][,errors="strict"])decode()方法的语法格式:bytes.decode([encoding="utf-8"][,errors="strict"]) m="以心......
  • seurat 单细胞数据分析中 VizDimLoadings 函数
     前期处理:https://www.jianshu.com/p/fef17a1babc2#可视化对每个主成分影响比较大的基因集001、dat<-pbmc[["pca"]]@feature.loadings......
  • python 报错 most likely due to a circular import 解决方法
    原因各个python文件,互相引用,造成的循环引用问题。解决方法:把需要引用的独立成一个文件,让其单向引用使用python写一个稍微大一点的工程时,经常会遇到循环import,即cicular......
  • ASP中把数据导出为Excel的三种方法
     方法一:用excel组件这种方法利用Excel组件直接导出excel文件,要求服务器端安装有微软office(Excel)程序,否则无法运行。完整示例如下:Setconn=server.CreateObject("adod......
  • 7.2 SQL Server数据排序
    SQLServerORDERBY目录SQLServerORDERBYSQLServerORDERBY子句简介ORDERBY示例A)按一列升序排序B)按一列降序排序C)按多列对结果集排序D)按多列和不同顺序对结果......