Home >Backend Development >Python Tutorial >Detailed explanation of the usage of int() in python function

Detailed explanation of the usage of int() in python function

巴扎黑
巴扎黑Original
2017-08-17 10:45:534186browse

int(x, [base])

Function:

The function is to convert a number or base type string into an integer.

Function prototype:

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.

Applicable Python version:

Python2.x

Python3.x

Note:

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

Python English document explanation:

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.

Code example:

1. When x is a number:

  int(3.14)            # 3
  int(2e2)             # 200
  int(100, 2)          # 出错,base 被赋值后函数只接收字符串

2. When x is a string:

  int('23', 16)      # 35
  int('Pythontab', 8)      # 出错,Pythontab不是个8进制数

3. base The possible value range is 2~36, including all English letters (not case-sensitive), F in hexadecimal represents 15, then G will represent 16 in binary, and so on....Z represents 35 in hexadecimal

  int('FZ', 16)      # 出错,FZ不能用十六进制表示
  int('FZ', 36)      # 575

4. The string 0x can appear in hexadecimal and is regarded as a hexadecimal symbol. Similarly, 0b can appear in binary and is regarded as the number 0 and the letter x

  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!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn