Python內建資料型別

wddwr7307914發表於2021-04-05

目前B站正在直播Mysql、Oracle實戰,詳情請關注公眾號:IT邦德


每個物件都有型別,python 中最基本的內建資料型別:

1. 整型

整數,2345,10,50

2. 浮點型

小數,3.14 或者科學計數法 314e-2

3. 布林型

表示真假,僅包含:True、False

4. 字串型

由字元組成的序列。 “abc”,”mes”,“IT邦德”,”DBA實戰”

一、 整數

Python 中,除 10 進位制,還有其他三種進位制:

0b 或 0B,二進位制 0 1

0o 或 0O,八進位制 0 1 2 3 4 5 6 7

0x 或 0X,十六進位制 0 1 2 3 4 5 6 7 8 9 a b c d e f

>>> 12
12
>>> 0b101
5
>>> 0o19
SyntaxError: invalid syntax
>>> 0o10
8
>>> 0xff
255
>>> 0xf
15
>>> 0x10
16

使用 int()實現型別轉換:

1. 浮點數直接捨去小數部分。如:int(9.9)結果是:9

2. 布林值 True 轉為 1,False 轉為 0。 如:int(True)結果是 1

3. 字串符合整數格式(浮點數格式不行)則直接轉成對應整數,否則報錯

>>> int("456")
456
>>> int("456abc")
Traceback (most recent call last):
File "<pyshell#41>", line 1, in <module>
int("456abc")
ValueError: invalid literal for int() with base 10: '456abc'
>>> int("456.78")
Traceback (most recent call last):
File "<pyshell#42>", line 1, in <module>
int("456.78")
ValueError: invalid literal for int() with base 10: '456.78'
>>>

自動轉型:整數和浮點數混合運算時,表示式結果自動轉型成浮點數。比如:2+8.0 的結果是 10.0

整數可以有多大?

Python2 中,int 是 32 位,可以儲存從-2147483648 到 2147483647 的整數(約±21 億)。

Long 型別是 64 位,可以儲存:-2^63--2^63-1 之間的數值。

Python3 中,int 可以儲存任意大小的整數,long 被取消,Python3 中可以做超大數的計算,而不會造成“整數溢位”,

這也是 Python 特別適合科學運算的特點。


二、 浮點數

浮點數,稱為 float, 比如:3.14,表示成:314E-2 或者 314e-2

這些數字在記憶體中也是 按照科學計數法 儲存

型別轉換和四捨五入

1. 類似於 int(),我們也可以使用 float()將其他型別轉化成浮點數。

2. 整數和浮點數混合運算時,表示式結果自動轉型成浮點數。比如:2+8.0 的結果是 10.0

3. round(value)可以返回四捨五入的值

注:但不會改變原有值,而是產生新的值

三、布林值

Python2 中沒有布林值,直接用數字 0 表示 False,用數字 1 表示 True

Python3 中,把 True 和 False 定義成了關鍵字,但他們的本質還是 1 和 0,甚至可以和數字相加

>>> a = True
>>> b = 3
>>> a+b
4


四、字串

Python3 直接支援 Unicode,可以表示世界上任何書面語言的字元。Python3 的字元預設就是 16 位 Unicode 編碼,

ASCII 碼是 Unicode 編碼的子集。

使用內建函式 ord()可以把字元轉換成對應的 Unicode 碼

使用內建函式 chr()可以把十進位制數字轉換成對應的字元

>>> ord('A')
65
>>> ord('邦')
39640
>>> chr(66)
'B'
>>> ord('德')
28103

連續三個單引號或三個雙引號,可以幫助我們建立多行字串,例如:

>>> resume = ''' name="gaoqi"
company="sxt" age=18
lover="Tom"'''
>>> print(resume)
name="gaoqi"
company="sxt" age=18
lover="Tom"

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69947868/viewspace-2766527/,如需轉載,請註明出處,否則將追究法律責任。

相關文章