python int()函數執行個體詳解

來源:互聯網
上載者:User
int(x, [base])

功能:

函數的作用是將一個數字或base類型的字串轉換成整數。( Python視頻教程)


函數原型:

int(x=0)

int(x, base=10),base預設值為10,也就是說不指定base的值時,函數將x按十進位處理。


適用Python版本:

Python2.x

Python3.x


注意:

1. x 可以是數字或字串,但是base被賦值後 x 只能是字串

2. x 作為字串時必須是 base 類型,也就是說 x 變成數字時必須能用 base 進位表示


Python英文文檔解釋:

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.


代碼執行個體:


1. x 是數位情況:

  int(3.14)            # 3  int(2e2)             # 200  int(100, 2)          # 出錯,base 被賦值後函數只接收字串


2. x 是字串的情況:

  int('23', 16)      # 35  int('Pythontab', 8)      # 出錯,Pythontab不是個8進位數


3. base 可取值範圍是 2~36,囊括了所有的英文字母(不區分大小寫),十六進位中F表示15,那麼G將在二十進位中表示16,依此類推....Z在三十六進位中表示35

  int('FZ', 16)      # 出錯,FZ不能用十六進位表示  int('FZ', 36)      # 575


4. 字串 0x 可以出現在十六進位中,視作十六進位的符號,同理 0b 可以出現在二進位中,除此之外視作數字 0 和字母 x

  int('0x10', 16)  # 16,0x是十六進位的符號  int('0x10', 17)  # 出錯,'0x10'中的 x 被視作英文字母 x  int('0x10', 36)  # 42804,36進位包含字母 x

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.