當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python int()用法及代碼示例


int() 方法從任何數字或字符串返回一個整數對象。

用法:

int(x=0, base=10)

參數:

int() 方法有兩個參數:

  • x- 要轉換為整數對象的數字或字符串。
    默認參數是zero.
  • base- 數字的基數x.
    可以是 0(代碼文字)或 2-36。

返回:

int() 方法返回:

  • 給定數字或字符串中的整數對象將默認基數視為 10
  • (無參數)返回 0
  • (如果給定基數) 處理給定基數 (0, 2, 8, 10, 16) 中的字符串

示例 1:int() 如何在 Python 中工作?

# integer
print("int(123) is:", int(123))

# float
print("int(123.23) is:", int(123.23))

# string
print("int('123') is:", int('123'))

輸出

int(123) is: 123
int(123.23) is: 123
int('123') is: 123

示例 2:int() 如何處理十進製、八進製和十六進製?

# binary 0b or 0B
print("For 1010, int is:", int('1010', 2))
print("For 0b1010, int is:", int('0b1010', 2))

# octal 0o or 0O
print("For 12, int is:", int('12', 8))
print("For 0o12, int is:", int('0o12', 8))

# hexadecimal
print("For A, int is:", int('A', 16))
print("For 0xA, int is:", int('0xA', 16))

輸出

For 1010, int is: 10
For 0b1010, int is: 10
For 12, int is: 10
For 0o12, int is: 10
For A, int is: 10
For 0xA, int is: 10

示例 3:int() 用於自定義對象

在內部,int() 方法調用對象的__int__() 方法。

因此,即使對象不是數字,您也可以將對象轉換為整數對象。

您可以通過覆蓋類的__index__()__int__() 方法來返回一個數字來做到這一點。

這兩個方法應該返回相同的值,因為舊版本的 Python 使用 __int__() ,而新版本使用 __index__() 方法。

class Person:
    age = 23

    def __index__(self):
        return self.age
    
    def __int__(self):
        return self.age

person = Person()
print('int(person) is:', int(person))

輸出

int(person) is: 23

相關用法


注:本文由純淨天空篩選整理自 Python int()。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。