Python+int('35',8)为啥等于29?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python+int('35',8)为啥等于29?相关的知识,希望对你有一定的参考价值。
参考技术A Python中的int()函数用于将一个字符串或数字转换为整型。在这个例子中,int()函数的第一个参数是字符串'35',第二个参数是数字8,表示将字符串'35'转换为8进制数。由于8进制数'35'对应的十进制数是29,因此int('35',8)的返回值为29。 参考技术B int('字符串', 数字),不会错的方法是:int('35', base=8)会得到你要的53 参考技术C 在 Python 中,int() 函数用于将字符串转换为整数。第二个参数(8)表示要转换的字符串的进制,这里表示字符串 '35' 是一个八进制数。因此,int('35', 8) 将八进制数 '35' 转换为十进制数,即 29。
python 中的int函数怎么用
int()是Python的一个内部函数
Python系统帮助里面是这么说的
[python] view plain copy
>>> help(int)
Help on class int in module __builtin__:
class int(object)
| int(x[, base]) -> integer
|
| Convert a string or number to an integer, if possible. A floating point
| argument will be truncated towards zero (this does not include a string
| representation of a floating point number!) When converting a string, use
| the optional base. It is an error to supply a base when converting a
| non-string. If base is zero, the proper base is guessed based on the
| string content. If the argument is outside the integer range a
| long object will be returned instead.
[python] view plain copy
>>> int(12.0)
12
int()函数可以将一个数转化为整数
[python] view plain copy
>>> int('12',16)
18
这里有两个地方要注意:1)12要以字符串的形式进行输入,如果是带参数base的话
2)这里并不是将12转换为16进制的数,而是说12就是一个16进制的数,int()函数将其用十进制数表示,如下
[python] view plain copy
>>> int('0xa',16)
10
>>> int('10',8)
8
语法
以下是Python int()函数的语法:
class int(x, base=10)
参数
x--字符串或数字
base--进制数,默认十进制
返回值
返回整型数据
实例
以下展示了使用int()方法的实例:
>>>int() # 不传入参数时,得到结果0
0
>>> int(3)
3
>>> int(3.6)
3
>>> int('12',16) # 如果是带参数base的话,12要以字符串的形式进行输入,12 为 16进制
18
>>> int('0xa',16)
10
>>> int('10',8)
8
以上是关于Python+int('35',8)为啥等于29?的主要内容,如果未能解决你的问题,请参考以下文章
键盘任意输入三个整数,要求按照从小到大的熟悉排列python
python出错:AttributeError: 'int' object has no attribute 'encode'