Python类型转换有哪些?Python类型转换函数介绍

avatar 2020年5月15日17:58:57 评论 1,873

Python类型转换有哪些?Python类型转换函数介绍。类型转换是一种方法,用于将在某种数据类型中声明的变量/值更改为另一种数据类型,以匹配代码段所需执行的操作。在python中,可以使用诸如int(),string(),float()等构造函数来实现此功能。可以通过使用两种不同类型的类型转换(例如隐式)来执行类型转换过程。类型转换和显式类型转换。

一.Python中的类型转换

Python有两种类型的类型转换:

1.隐式转换

隐式类型转换由解释器自动执行,而无需用户干预。Python自动将一种数据类型转换为另一种数据类型。此过程不需要任何用户参与Python促进了较低数据类型的转换,例如,将整数转换为较高数据类型表示为float以避免数据丢失。这种类型的转换或类型转换称为UpCasting。

2.显式转换

在显式类型转换中,用户或程序员将对象的数据类型转换为所需的数据类型。在Python中,我们使用预定义的函数(例如int(),float(),str(),bool()等)来执行显式类型转换。

句法:

(Requireddatatype)(Expression)

(Desiredtype)

二.Python中类型转换的示例

Example#1–隐式类型转换/转换

用于说明隐式类型转换/广播的程序。

Python档案:Example1.py

#ProgramtoillustrateImplicittypeconversion

#creatingaddition()functiontoaddtwonumbers

defaddition(a,b):

print("Typeoffirstnumber(a):",a,type(a))

print("Typeofsecondnumber(b):",b,type(b))

c=a+b

print("Typeofresultingvariable(c):",c,type(c))

#addition()functioncallswithdifferentinputs

addition(21,23)#bothintegers

print('\n')

addition(21,23.0)#secondbeingfloat

print('\n')

addition(21.0,23)#firstbeingfloat

print('\n')

addition(21.0,23.0)#bothfloat

Python类型转换有哪些?Python类型转换函数介绍

说明:定义了两个数字相加的功能。打印第一个输入编号,第二个输入编号和求和类型

首次调用additional():两个输入数字均为整数类型,因此结果也是整数。在这种情况下,不需要类型转换。

第二次调用addition():第一个输入是整数,第二个输入是浮点型。因此,python解释器会在内部将整数类型转换为浮点类型,以避免数据丢失。因此,结果是浮点型,如上面的输出所示。

第三次调用addition():第一个输入为浮点数,第二个输入为整数类型。因此,python解释器会在内部将整数类型转换为浮点类型,以避免数据丢失。因此,结果是浮动类型。

第四次addition()调用:两个数字均为浮点型。因此,python解释器将不会在此处执行任何类型转换。因此,结果是浮动类型。

Example#2–显式类型转换

下面是显式类型转换的说明。

Python档案:Example2.py

#ProgramtoillustrateExplicittypeconversion

#creatingaddition()functiontoaddtwonumbers

defaddition(a,b):

print("Typeoffirstnumber(a):",a,type(a))

print("Typeofsecondnumber(b):",b,type(b))

c=a+b

print("Typeofresultingvariable(c):",c,type(c))

print("acceptinginputfromtheuser-->")

print("Enterfirstnumber")

num1=input()

print("Entersecondnumber")

num2=input()

#addition()functioncall

addition(num1,num2)

print('\n')

输出:Example2.py

说明:在上面的程序中,定义了add()函数,该函数将计算两个数字的和。提示用户通过input()语句输入两个数字。

最后,用数字23和18调用addition()。但是结果是2318,如下面的输出所示,而不是41。为什么?

这是因为input()的返回类型是一个字符串。因此,用户输入的数字将被视为字符串值。因此,输出是字符串的并置,而不是作为预期输出的整数之和。在这种情况下,Python本身将不会执行任何类型转换。这可以通过显式类型转换来纠正。

在任何编程语言中,一次又一次地需要将一种数据类型的值转换为另一种数据类型。Python提供了隐式类型转换和显式类型转换。隐式类型转换由python解释器执行,而无需程序员干预。显式类型转换由程序员执行。

  • 我的微信
  • 这是我的微信扫一扫
  • weinxin
  • 我的微信公众号
  • 我的微信公众号扫一扫
  • weinxin
avatar

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: