以下代码的运行环境为(IDLE(Python3.8 64-bit))
一、int()函数
int()函数有两种书写格式:
1、int([x])格式
该格式的功能为截取数字的整数部分或者将字符串转换成一个整数。简单的说就是将一个字符串(这里需要注意的是int()函数不接受带小数的数字字符串)或数字(可正,可负,可为零,可带小数点)转换为整型。这是最常用的格式和功能。
相关代码测试如下:
>>> int()#如果不给参数,则返回 0
0
>>> int(0)
0
>>> int(1.23)#加号 “+” 对值无影响 故一般省略
1
>>> int(-1.23)
-1
>>> int('4')
4
>>> int("4")#加号 “+” 对值无影响 故一般省略
4
>>> int('-4')
-4
>>> int('1.23')#int()函数不接受带小数的数字字符串
Traceback (most recent call last):
File "<pyshell#7>", line 1, in <module>
int('1.23')
ValueError: invalid literal for int() with base 10: '1.23'
>>> int('-1.23')#int()函数不接受带小数的数字字符串
Traceback (most recent call last):
File "<pyshell#8>", line 1, in <module>
int('-1.23')
ValueError: invalid literal for int() with base 10: '-1.23'
>>> int('a')#单纯这样写是不可的!
Traceback (most recent call last):
File "<pyshell#9>", line 1, in <module>
int('a')
ValueError: invalid literal for int() with base 10: 'a'
>>>
附上图片
2、int(x,base=10)格式
该格式的功能为把base进制的字符串x转换为十进制,其中base可以自己选定基数,其取值范围为0和2~36,base 默认基数为10,x 默认为十进制的字符串。
相关代码测试如下:
>>> int('2ef',16)#将十六进制的字符串2ef转换为十进制
751
>>> int('027',8)#将八进制的数027转换为十进制
23
>>> int('100100',10)#将十进制的数100100转换为十进制
100100
>>> int('100100',base = 0)#base为0,此时和base取10一样,将十进制的数100100转为十进制
100100
>>> int('100100')#base默认基数为10
100100
>>> int('100100',2)#将二进制的数100100转换为十进制
36
>>> int('100100',8)#将八进制的数100100转换为十进制
32832
>>> int('100100.0')#特别注意:这里同样不接受带小数的数字字符串
Traceback (most recent call last):
File "<pyshell#9>", line 1, in <module>
int('100100.0')
ValueError: invalid literal for int() with base 10: '100100.0'
>>> int('123',2)#特别注意:base必须要与前面的x相匹配。就比如‘123’,它本就不是一个正常的二进制数,故会报错
Traceback (most recent call last):
File "<pyshell#10>", line 1, in <module>
int('123',2)
ValueError: invalid literal for int() with base 2: '123'
>>>#最后在温馨提醒一下base的取值范围 base=0 and 2<=base<=36
附上图片
二、float()函数
float(x = 0, / )格式
对于float()函数,它只有一个格式:float([x])。该格式的功能是将一个数字或字符串转换成浮点数(返回一个十进制浮点型数值(小数))。和上面的int([x])有些类似。
float([x])中x的数值可以是十进制的数(小数和整数),bool类型(布尔值True和False)或表示十进制数字的字符串(如:‘7’、‘-7’等)。
相关测试代码如下:
>>> float()#如果未给定参数,则返回0.0。
0.0
>>> float(1)#如果参数是整数,将返回等值的浮点数(Python的浮点精度内)
1.0
>>> float(1.233)#如果参数是浮点数,将返回等值的浮点数(Python的浮点精度内)
1.233
>>> float(-1.233)#这里需要注意的是,如果参数超出Python浮点范围,将会引发OverflowError错误
-1.233
>>> float('7')
7.0
>>> float('-7.7')
-7.7
>>> float(True)#布尔值True 对应1.0
1.0
>>> float(False)#布尔值False 对应0.0
0.0
>>> float('inf')#“inf”、“Inf”、“INFINITY”和“iNfINity”都是可以被float接受的正无穷大的拼写方式
inf
>>> float('Inf')
inf
>>> float('INFINITY')
inf
>>> float('-inf')#负无穷大
-inf
>>>