Home >Backend Development >Python Tutorial >Detailed explanation of the usage of int() in python function
int(x, [base])
The function is to convert a number or base type string into an integer.
int(x=0)
int(x, base=10), the default value of base is 10, which means that base is not specified value, the function treats x as decimal.
Python2.x
Python3.x
1. x can be a number or a string, But after base is assigned, x can only be a string
2. When x is used as a string, it must be of base type, that is to say, when x becomes a number, it must be expressed in base base
class int(x=0)
class int(x, base=10)
Return an integer object constructed from a number or string x , or return 0 if no arguments are given. If x is a number, return x.__int__(). For floating point numbers, this truncates towards zero.
If x is not a number or if base is given , then x must be a string, bytes, or bytearray instance representing an integer literal in radix base. Optionally, the literal can be preceded by + or - (with no space in between) and surrounded by whitespace. A base-n literal consists of the digits 0 to n-1, with a to z (or A to Z) having values 10 to 35. The default base is 10. The allowed values are 0 and 2–36. Base-2, -8, and - 16 literals can be optionally prefixed with 0b/0B, 0o/0O, or 0x/0X, as with integer literals in code. Base 0 means to interpret exactly as a code literal, so that the actual base is 2, 8, 10, or 16, and so that int('010', 0) is not legal, while int('010') is, as well as int('010', 8).
The integer type is described in Numeric Types — int, float, complex.
Changed in version 3.4: If base is not an instance of int and the base object has a base.__index__ method, that method is called to obtain an integer for the base. Previous versions used base.__int__ instead of base.__index__.
Changed in version 3.6: Grouping digits with underscores as in code literals is allowed.
int(3.14) # 3 int(2e2) # 200 int(100, 2) # 出错,base 被赋值后函数只接收字符串
int('23', 16) # 35 int('Pythontab', 8) # 出错,Pythontab不是个8进制数
int('FZ', 16) # 出错,FZ不能用十六进制表示 int('FZ', 36) # 575
int('0x10', 16) # 16,0x是十六进制的符号 int('0x10', 17) # 出错,'0x10'中的 x 被视作英文字母 x int('0x10', 36) # 42804,36进制包含字母 x
The above is the detailed content of Detailed explanation of the usage of int() in python function. For more information, please follow other related articles on the PHP Chinese website!