python基本函数——int()和float()


以下代码的运行环境为(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 默认基数为10x 默认为十进制的字符串

相关代码测试如下:

>>> 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
>>> 

猜你喜欢

转载自blog.csdn.net/weixin_46658699/article/details/110098537
今日推荐