鍍金池/ 教程/ Python/ Python3變量類型
Python3文件操作
Python3日期和時(shí)間
Python3基礎(chǔ)語法
Python3字典
Python3元組
Python3文件方法
Python3字符串
Python3引入什么新的東西?
Python3異常處理
Python3模塊
Python3數(shù)字
Python3變量類型
Python3函數(shù)
Python3循環(huán)
Python3 os文件目錄的方法
Python3 while循環(huán)語句
Python3斷言
Python3基本運(yùn)算符
Python3環(huán)境安裝設(shè)置
Python3標(biāo)準(zhǔn)異常
Python3嵌套循環(huán)
Python3教程
Python3決策
Python3 for循環(huán)語句
Python3列表

Python3變量類型

變量是什么東西?只不過是保留在存儲(chǔ)器位置的存儲(chǔ)值。這意味著,當(dāng)我們創(chuàng)建一個(gè)變量,需要在內(nèi)存中保留一些空間。

基于變量的數(shù)據(jù)類型,解釋器會(huì)分配對(duì)應(yīng)的內(nèi)存,并決定什么可以存儲(chǔ)在保留內(nèi)存中。因此,通過為變量分配不同的數(shù)據(jù)類型,可以存儲(chǔ)這些變量在整數(shù),小數(shù)或字符的形式。

賦值給變量

Python變量不需要顯式聲明保留內(nèi)存空間。當(dāng)賦值給一個(gè)變量這些聲明自動(dòng)發(fā)生。等號(hào)(=)是用來賦值給變量。

=運(yùn)算符的左邊是變量名稱,而 =運(yùn)算符右側(cè)是存儲(chǔ)在變量的值。例如 -
#!/usr/bin/python3

counter = 100          # An integer assignment
miles   = 1000.0       # A floating point
name    = "John"       # A string

print (counter)
print (miles)
print (name)
在這里,100,1000.0和“John”這幾個(gè)值分別分配給counter,miles和 name 變量。這將產(chǎn)生以下結(jié)果-
100
1000.0
John

多重賦值

Python允許同時(shí)分配一個(gè)值給幾個(gè)變量。例如 -
a = b = c = 1 

這里,一個(gè)整數(shù)對(duì)象使用數(shù)值1來創(chuàng)建,并且所有三個(gè)變量都分配到相同的存儲(chǔ)器位置。也可以將多個(gè)對(duì)象同時(shí)分配多個(gè)變量。例如 -

a, b, c = 1, 2, "john" 

這里,兩個(gè)整數(shù)對(duì)象使用值1和2分別指定給變量a和b,以及“john”字符串對(duì)象值賦給變量c。

標(biāo)準(zhǔn)數(shù)據(jù)類型

存儲(chǔ)在內(nèi)存中的數(shù)據(jù)可以是多種類型的。例如,一個(gè)人的年齡可存儲(chǔ)為數(shù)值,而他或她的地址則可存儲(chǔ)為字母、數(shù)字和字符。Python有用于定義存儲(chǔ)方法操作的各種標(biāo)準(zhǔn)數(shù)據(jù)類型。

Python 有五個(gè)標(biāo)準(zhǔn)數(shù)據(jù)類型 -
  • 數(shù)字
  • 字符串

  • 列表

  • 元組

  • 字典

Python數(shù)字

數(shù)字?jǐn)?shù)據(jù)類型存儲(chǔ)數(shù)值。當(dāng)分配一個(gè)值給創(chuàng)建數(shù)值對(duì)象。 例如?

var1 = 1
var2 = 10 

您也可以通過使用 del 語句刪除引用的那一個(gè)數(shù)字對(duì)象。del 語句的語法是 -

del var1[,var2[,var3[....,varN]]]]
可以通過使用del語句刪除單個(gè)或多個(gè)對(duì)象。例如 -
del var
del var_a, var_b
Python支持四種不同的數(shù)字類型 -
  • int (有符號(hào)整數(shù))

  • float (浮點(diǎn)實(shí)數(shù)值)

  • complex (復(fù)數(shù))

在Python3所有整數(shù)表示為長(zhǎng)整型。因此,沒有單獨(dú)為long的整數(shù)類型。

示例

下面是數(shù)字的例子 -
int float complex
10 0.0 3.14j
100 15.20 45.j
-786 -21.9 9.322e-36j
080 32.3+e18 .876j
-0490 -90. -.6545+0J
-0x260 -32.54e100 3e+26J
0x69 70.2-E12 4.53e-7j
  • 復(fù)數(shù)由一對(duì)有序組成,通過 x + yj 來表示實(shí)浮點(diǎn)數(shù), 其中 x 和 y 是實(shí)數(shù)并且 j 是虛數(shù)單位。

Python字符串

字符串在 Python 為一組連續(xù)的引號(hào)表示的字符。Python允許對(duì)單引號(hào)或雙引號(hào)對(duì)。 字符串子集可以用切片操作符 ([ ] and [:] ) :字符串的索引從0開始,并以-1結(jié)束。加號(hào)(+)號(hào)是字符串連接運(yùn)算符和星號(hào)(*)是重復(fù)操作符。例如 -

#!/usr/bin/python3

str = 'Hello World!'

print (str)          # Prints complete string
print (str[0])       # Prints first character of the string
print (str[2:5])     # Prints characters starting from 3rd to 5th
print (str[2:])      # Prints string starting from 3rd character
print (str * 2)      # Prints string two times
print (str + "TEST") # Prints concatenated string
這將產(chǎn)生以下結(jié)果 -
Hello World!
H
llo
llo World!
Hello World!Hello World!
Hello World!TEST

Python列表

列表是最通用的Python復(fù)合數(shù)據(jù)類型。列表中包含用逗號(hào)分隔并使用方括號(hào)[]來包含項(xiàng)目。從某種程度上講,列表類似于C語言中的數(shù)組。一個(gè)較大的區(qū)別是,所有在一個(gè)列表中的項(xiàng)目可以是不同的數(shù)據(jù)類型。

存儲(chǔ)在一個(gè)列表中的值可以使用切片操作符([]和[:])進(jìn)行訪問:列表的0索引位置為起點(diǎn)位置,并在以-1 結(jié)束。 加號(hào)(+)號(hào)是列表中連接運(yùn)算,星號(hào)(*)是重復(fù)操作符。例如 -

#!/usr/bin/python3

list = [ 'abcd', 786 , 2.23, 'john', 70.2 ]
tinylist = [123, 'john']

print (list)          # Prints complete list
print (list[0])       # Prints first element of the list
print (list[1:3])     # Prints elements starting from 2nd till 3rd 
print (list[2:])      # Prints elements starting from 3rd element
print (tinylist * 2)  # Prints list two times
print (list + tinylist) # Prints concatenated lists
這產(chǎn)生以下結(jié)果 -
['abcd', 786, 2.23, 'john', 70.200000000000003]
abcd
[786, 2.23]
[2.23, 'john', 70.200000000000003]
[123, 'john', 123, 'john']
['abcd', 786, 2.23, 'john', 70.200000000000003, 123, 'john']

Python元組

元組是另一個(gè)序列數(shù)據(jù)類型,它類似于列表。元組中使用單個(gè)逗號(hào)來分隔每個(gè)值。不像列表,元組的值是放列在圓括號(hào)中。

列表和元組之間的主要區(qū)別是:列表是包含在方括號(hào)[]中,并且它們的元素和大小是可以改變的,而元組元素是括在括號(hào)()中,不能進(jìn)行更新。元組可以被認(rèn)為是只讀的列表。例如 -

#!/usr/bin/python3

tuple = ( 'abcd', 786 , 2.23, 'john', 70.2  )
tinytuple = (123, 'john')

print (tuple)           # Prints complete tuple
print (tuple[0])        # Prints first element of the tuple
print (tuple[1:3])      # Prints elements starting from 2nd till 3rd 
print (tuple[2:])       # Prints elements starting from 3rd element
print (tinytuple * 2)   # Prints tuple two times
print (tuple + tinytuple) # Prints concatenated tuple
這產(chǎn)生以下結(jié)果 -
('abcd', 786, 2.23, 'john', 70.200000000000003)
abcd
(786, 2.23)
(2.23, 'john', 70.200000000000003)
(123, 'john', 123, 'john')
('abcd', 786, 2.23, 'john', 70.200000000000003, 123, 'john')
以下使用元組的代碼是無效,因?yàn)槲覀冊(cè)囍略M,這是不允許的。列表中類似的情況是 - 
#!/usr/bin/python3

tuple = ( 'abcd', 786 , 2.23, 'john', 70.2  )
list = [ 'abcd', 786 , 2.23, 'john', 70.2  ]
tuple[2] = 1000    # Invalid syntax with tuple
list[2] = 1000     # Valid syntax with list

Python字典

Python字典是一種哈希表類型。它們工作的方式就類似在Perl中關(guān)聯(lián)數(shù)組或哈希、鍵-值對(duì)。字典的鍵可以是幾乎任何Python類型,但通常是數(shù)字或字符串。另一方面,它的值可以是任意Python對(duì)象。

字典是用大括號(hào)括起來({}),并且值可分配并使用方括號(hào)([])來訪問。例如-
#!/usr/bin/python3

dict = {}
dict['one'] = "This is one"
dict[2]     = "This is two"

tinydict = {'name': 'john','code':6734, 'dept': 'sales'}


print (dict['one'])       # Prints value for 'one' key
print (dict[2])           # Prints value for 2 key
print (tinydict)          # Prints complete dictionary
print (tinydict.keys())   # Prints all the keys
print (tinydict.values()) # Prints all the values
這產(chǎn)生以下結(jié)果 -
This is one
This is two
{'dept': 'sales', 'code': 6734, 'name': 'john'}
['dept', 'code', 'name']
['sales', 6734, 'john'] 

字典中沒有元素順序(排序)的概念。這是不正確的說,元素是“亂序”; 它們僅僅是無序的。

數(shù)據(jù)類型轉(zhuǎn)換

有時(shí),可能需要執(zhí)行內(nèi)置類型之間的轉(zhuǎn)換。要在類型之間轉(zhuǎn)換,只需使用類型名稱作為函數(shù)。

有幾個(gè)內(nèi)置函數(shù)從一種數(shù)據(jù)類型轉(zhuǎn)換到另一個(gè)。這些函數(shù)返回代表轉(zhuǎn)換后的值的新對(duì)象。

函數(shù) 描述

int(x [,base])

轉(zhuǎn)換x為整數(shù)。x是字符串則 base 為指定的基數(shù)

float(x)

轉(zhuǎn)換x為一個(gè)浮點(diǎn)數(shù)

complex(real [,imag])

創(chuàng)建一個(gè)復(fù)數(shù)

str(x)

轉(zhuǎn)換對(duì)象x為字符串表示

repr(x)

轉(zhuǎn)換對(duì)象x為表達(dá)式字符串

eval(str)

計(jì)算一個(gè)字符串,并返回一個(gè)對(duì)象

tuple(s)

轉(zhuǎn)換s為一個(gè)元組

list(s)

轉(zhuǎn)換s為一個(gè)列表

set(s)

轉(zhuǎn)換s為一個(gè)集合

dict(d)

創(chuàng)建一個(gè)字典。 d必須是(鍵,值)元組序列

frozenset(s)

轉(zhuǎn)換s為冷凍集

chr(x)

將一個(gè)字符轉(zhuǎn)換為整數(shù)

unichr(x)

Unicode字符轉(zhuǎn)換為整數(shù)

ord(x)

單個(gè)字符其轉(zhuǎn)換為整數(shù)值

hex(x)

十六進(jìn)制字符串轉(zhuǎn)換為整數(shù)

oct(x)

轉(zhuǎn)換整數(shù)成為八進(jìn)制字符串