加入收藏 | 设为首页 | 会员中心 | 我要投稿 银川站长网 (https://www.0951zz.com/)- 云通信、基础存储、云上网络、机器学习、视觉智能!
当前位置: 首页 > 综合聚焦 > 编程要点 > 语言 > 正文

Python int函数作用是什么 怎样运用呢

发布时间:2023-06-15 13:44:27 所属栏目:语言 来源:
导读:今天小编跟大家讲解下有关“Python int函数作用是什么,怎样使用呢?”的内容 ,相信小伙伴们对这个话题应该有所关注吧,小编也收集到了相关资料,希望小伙伴们看了有所帮助。int函数可以将一个指定进制的

今天小编跟大家讲解下有关“Python int函数作用是什么,怎样使用呢?”的内容 ,相信小伙伴们对这个话题应该有所关注吧,小编也收集到了相关资料,希望小伙伴们看了有所帮助。

int函数可以将一个指定进制的数字型字符串或者十进制数字转化为整形。

语法

int(object, base)

举例

1. 浮点数转化为整型

test = [12.96, -34.21, 12.0e3]

 

for number in test:

    print(int(number))

输出结果为:

12

-34

12000

注意:无论浮点数的小数部分值是什么,使用int( )函数转化时,只会保留整数部分,而将小数部分舍去。因此在求浮点数的四舍五入之类的问题时,应该避免直接使用int函数。

2. 二进制数转化为十进制数

test = ['111011011111', '0b101']

for number in test:

    print(int(number, 2))

输出结果为:

3807

5

3. 八进制数转化为十进制数

test = ['-1537202', '0o147']

for number in test:

    print(int(number, 8))

输出结果为:

-441986

103

4. 将十六进制数转化为十进制数

test = ['34A', '0x17']

for number in test:

    print(int(number, 16))

输出结果为:

842

23

5. 布尔值转换为整数

Python里最简单的数据类型是布尔型,它只有两个可选值:True和False。当转换为整数时,它们分别代表1和0:

>>> int(True)

1

>>> int(False)

0

6. 将整数字符串转换为整数

可以将仅包含数字和正负号的字符串转换为整数。

>>> int('99')

99

>>> int('-23')

-23

>>> int('+12')

12

注意事项

1. 所有参数都省略时,返回整数0

test = int()

print(test, type(test))

输出结果为:

0 <class 'int'>

2. 试图将一个浮点数字符串转化为十进制整数时,会报错:

test = '23.1314'

print(int(test))

输出结果为:

Traceback (most recent call last):

 File "/Users/Test2.py", line 3, in <module>

  print(int(test))

ValueError: invalid literal for int() with base 10: '23.1314'

返回一个值报错:对于函数int,使用了无效的文字转化成十进制:23.1314.

正确的使用方法是,现将浮点数字符串转化为浮点数类型,再将浮点数类型转化为整数。

test = '23.1314' 

print(int(float(test)))

返回23.

注意:int()函数可以接受浮点数或由数字组成的字符串,但无法接受包含小数点或指数的字符串。

3. base参数错误

Python会自动计算base参数的使用范围。若超出范围会报错:

test = '110' 

print(int(test, -2))

输出结果为:

Traceback (most recent call last):

 File "/Users/Test2.py", line 3, in <module>

  print(int(test, -2))

ValueError: int() base must be >= 2 and <= 36, or 0

根据object参数值,Python自动计算出base的合适区间。

4. 当object参数中存在非法字符时,Python报错

例如,在八进制数字字符中引入字符‘A’,或者十六进制字符中引入字符‘H’

test = '110S' 

print(int(test, 16))

输出结果为:

Traceback (most recent call last):

 File "/Users/Test2.py", line 3, in <module>

  print(int(test, 16))

ValueError: invalid literal for int() with base 16: '110S'

5. 二进制符号0b、八进制符号0o、十六进制符号0x加入数字字符串中对结果没有影响,且可以省略

test_0b = ['0b1011', '1011']

test_0o = ['0o735', '735']

test_0x = ['0xFA', 'FA']

for number in test_0b:

    print(int(number, 2))

 

for number in test_0o:

    print(int(number, 8))

 

for number in test_0x:

    print(int(number, 16))

输出结果为:

11

11

477

477

250

250

6. 将一个十进制数转化为十进制数,没有任何报错也不会有任何意义

>>> int(5)

5

也可以将一个十进制整数字符串转化为十进制(类型转化)

>>> int('23')

23

7. 自定义进制转化为十进制

int函数拥有强大的自定义进制转化为十进制功能。例如,将17进制数字字符转化为十进制数字:

test_17 = 'GG'

print(int(test_17, 17))

输出结果为:

288

8. 合法的数字字符字母不区分大小写

例如在十六进制中,A和a都可以转化成十进制数,且转化结果相同。

>>> int('a', 16)

10

>>> int('A', 16)

10

以上就是关于“Python int函数作用是什么,怎样使用呢?”的介绍了,感谢各位的阅读,希望这篇文章能帮助大家解决问题。

(编辑:银川站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!