『无为则无心』Python基础

您所在的位置:网站首页 python转换类型 『无为则无心』Python基础

『无为则无心』Python基础

2023-05-25 04:46| 来源: 网络整理| 查看: 265

目录1、为什么要进行数据类型转换2、数据类型转换本质3、数据类型转换用到的函数4、常用数据类型转换的函数(1)int()函数(2)float()函数(3)str()函数(4)bool()函数(5)eval()函数

1、为什么要进行数据类型转换

使用Python处理数据时,不可避免的要使用数据类型之间的转换。如int、float、string之间的转换。

例如:

问:通过input()函数接收用户输入的数据都是字符串类型,如果用户输入1,想得到整型该如何操作?

答:转换数据类型即可,即将字符串类型转换成整型。

2、数据类型转换本质 所谓的类型转换,将一个类型的对象转换为其他对象。 类型转换不是改变对象本身的数据类型,而是根据当前对象的值创建一个新对象,因为int、float、string变量的数据类型是不会改变的,需要把这个新创建的数据对象,赋值给当前对象的引用变量,那么变量的数据类型才会发生改变。 3、数据类型转换用到的函数

下面是我们常用到的一个数据类型转换函数的列表。

函数 说明 int(x [,base])(常用) 将x转换为一个整数 float(x)(常用) 将x转换为一个浮点数 complex(real [,imag]) 创建一个复数,real为实部,imag为虚部 str(x)(常用) 将对象x 转换为字符串 repr(x) 将对象x 转换为表达式字符串 eval(str)(常用) 用来计算在字符串中的有效Python表达式,并返回一个对象 tuple(s)(常用) 将序列 s 转换为一个元组 list(s)(常用) 将序列 s 转换为一个列表 chr(x) 将一个整数转换为一个Unicode字符 ord(x) 将一个字符转换为它的ASCII整数值 hex(x) 将一个整数转换为一个十六进制字符串 oct(x) 将一个整数转换为一个八进制字符串 bin(x) 将一个整数转换为一个二进制字符串

我们下面对标识有常用的方法进行说明,其他的函数,我们用到的话自己按照文档练习一下就可以会用。

4、常用数据类型转换的函数 (1)int()函数

int()函数可以用来将其他的对象数据类型转换为整型。

示例:

# 1、布尔值转换为整型:True -> 1 False -> 0 a = True """ 调用int()来将a转换为整型。 int()函数不会对原来的变量a产生影响, int()函数是将对象转换为指定的数据类型,并将其作为返回值返回。 如果希望修改原来的变量,则需要对变量进行重新赋值 这里很重要,一定要理解。 """ # 调用int()来将a转换为整型。 int(a) # int()函数不会对原来的变量a产生影响,打印结果可以看出。 print(type(a)) # # 如果希望修改原来的变量,则需要对变量进行重新赋值 a = int(a) print(type(a)) # # 2、浮点数:直接取整,省略小数点后的内容。 i = 123.456 # 变量没有重新赋值,原变量数据没有任何改变 int(i) print(i) # 123.456 print(type(i)) # # 变量重新赋值后,数值和类型都发生了改变。 i = int(i) print(i) # 123 print(type(i)) # """ # 3、字符串:合法的整数字符串,直接转换为对应的数字 如果不是一个合法的整数字符串,则报错: ValueError: invalid literal for int() with base 10: '数值'。 对于其他不可转换为整型的对象,直接抛出异常 TypeError。 (如果出现TypeError的报错,说明类型转换异常了,换句话说就是该类型不能这么转换) """ # 合法的整数字符串 i = "123456" i = int(i) print(i) # 123456 print(type(i)) # # 合法的整数字符串 j = "123.456" j = int(j) print(j) print(type(j)) # 在第二行,数据类型转换的时候就会报错 # ValueError: invalid literal for int() with base 10: '123.456' # 对于其他不可转换为整型的对象,直接抛出异常 ValueError。 # 如:None k = None k = int(k) # 报出异常:TypeError: int() argument must be a string, a bytes-like object or a number, not 'NoneType' (2)float()函数

float()函数可以用来将其他的对象数据类型转换为小数。

示例:

""" float()函数和int()函数的用法基本一致,不同的是它会将对象转换为浮点数。 1、布尔值:True -> 1.0 False -> 0.0。 2、整型:整数后边直接加上.0,如:15.0。 3、字符串:合法的数字(整数,小数)字符串,直接转换为对应的数字。 4、对于其他不可转换为整型的对象,直接抛出异常 TypeError (如果出现TypeError的报错,说明类型转换异常了,换句话说就是该类型不能这么转换)) """ # 简单练习,整型 i = 15 i = float(i) print(i) # 15.0 print(type(i)) # # 简单练习,字符串 i = "15" i = float(i) print(i) # 15.0 print(type(i)) # j = "15.12312" j = float(j) print(j) # 15.12312 print(type(j)) # # 简单练习,None # 同int()函数 (3)str()函数

str()函数可以用来将其他的对象数据类型转换为字符串。

示例:

""" 1、布尔值:True -> 'True' False -> 'False' 2、数值型直接原样转换成字符串 3、对于None类型,转换成字符串时,并没有报错。 (可能没学到的类型数据也不会报错) """ # 简单练习,float i = 15.1231 i = str(i) print(i) # 15.1231 print(type(i)) # # 对于None类型,转换成字符串时,并没有报错。 k = None k = str(k) print(k) # None print(type(k)) # (4)bool()函数

bool()函数可以将对象转换为布尔值,任何对象都可以转换为布尔值。

示例:

""" 规则: 对于所有表示空性的对象都会转换为False,其余的转换为True 哪些表示的空性:0 、 None 、 ''(空串) 。其他的可变对象学后再说。 """ # 简单练习,非空性 i = 15.1231 i = bool(i) print(i) # True print(type(i)) # # 简单练习,非空性 j = "python" j = bool(j) print(j) # True print(type(j)) # # 简单练习,非空性 k = None k = bool(k) print(k) # False print(type(k)) # (5)eval()函数 eval()函数是Python中的一个内置函数。 一般我们会这样描述evel()函数,把字符串里边的数据转换成他原本的类型。 eval()函数用法也是非常的灵活,我们主要说明通过eval()函数把字符串转换成其他对象数据类型。

示例:

str1 = 'True' str2 = '1' str3 = '1.1' str4 = '(1000, 2000, 3000)' str5 = '[1000, 2000, 3000]' print(type(eval(str1))) # print(type(eval(str2))) # print(type(eval(str3))) # print(type(eval(str4))) # print(type(eval(str5))) #

提示:Pyhton中数据类型转换的函数有很多,以后可以慢慢积累不同函数的使用方法。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3