Python int函数作用是什么,怎样使用呢?
Admin 2022-12-12 群英技术资讯 343 次浏览
int函数可以将一个指定进制的数字型字符串或者十进制数字转化为整形。
int(object, base)
名称 | 说明 | 备注 |
object | 一个数字或字符串参数 | 1. 数字参数可以是整数、浮点数(小数点表示和指数e表示皆可) 2. 字符串参数仅能包含在指定进制下所涵盖的字符 3. 该参数可省略 |
base | 进制数 | 1. 该参数可省略,省略时默认为10 2. 正整型参数,表示object所对应的进制 |
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
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
简介JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,它基于ECMAScript的一个子集。 JSON采用完全独立于语言的文本格式
Python3注释可以确保对模块, 函数, 方法和行内注释使用正确的风格,有专门的符号和格式,有单行与多行的区别。
python open()方法用于打开一个文件,并返回文件对象,在对文件处理的过程中都需要用到这个函数,如果文件无法打开,会抛出OSError。
python爬虫selenium有何用?selenium的用途之一就是可以拿它来做爬虫,但很多朋友对于Selenium并不了解,下面小编就给大家来介绍一下selenium优缺点和工作原理等等,有需要的朋友可以参考。
这篇文章主要介绍了教你怎么用python删除相似度高的图片,文中有非常详细的代码示例,对正在学习python的小伙伴们有很好地帮助,需要的朋友可以参考下
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008