Python資料型別——整型、布林型、列表、元祖、字典
阿新 • • 發佈:2018-12-04
Python直譯器可以自動識別使用者輸入的資料型別。建立物件的資料型別,可以通過type檢視。需要注意的是:使用者通過input輸入的資料,其型別均為字串
num1 = input("please input num1: ") num2 = input("please input num2: ") print("type of num1: ",type(num1),"type of num2: ",type(num2)) please input num1: test please input num2: 123 type of num1: <class 'str'> type of num2: <class 'str'>
整型
整型可分為整型(32位機器上整型的取值範圍為:-2**31~-2**31)和長整型。Python2.7中會自動轉換數字為整型、長整型。但在Python3.6中,不再有整型長整型之分。
Python中提供了10進位制轉換為其他進位制的方法
- 十進位制轉十六進位制
>>> hex(10)
'0xa'
- 十進位制轉八進位制
>>> oct(10)
'0o12'
- 十進位制轉二進位制
>>> bin(10)
'0b1010'
在浮點數中,Python預設的精度為17位,這個精度越到後面越不準確。當我們的計算需要使用更高精度的時候,可以使用“getcontext”和"Decimal"的方式來實現
>>> a = 3.141592653002154564564 >>> a 3.1415926530021547 >>> from decimal import * >>> getcontext() Context(prec=28, rounding=ROUND_HALF_EVEN, Emin=-999999, Emax=999999, capitals=1, clamp=0, flags=[], traps=[InvalidOperation, DivisionByZero, Overflow]) >>> getcontext().prec = 50 >>> a = Decimal(1)/Decimal(3) >>> a Decimal('0.33333333333333333333333333333333333333333333333333')
整型的常用方法
int:強制型別轉換
>>> a = "0xa" >>> print(int(a,base=16)) 10
bit_length:整數轉換成二進位制後所佔最少bit位數
>>> a = 10 >>> print(a.bit_length()) 4 >>> print(bin(a)) 0b1010