列表
列表是最常用的Python數(shù)據(jù)類型,它可以作為一個(gè)方括號(hào)內(nèi)的逗號(hào)分隔值出現(xiàn)。
列表的數(shù)據(jù)項(xiàng)不需要具有相同的類型
創(chuàng)建一個(gè)列表,只要把逗號(hào)分隔的不同的數(shù)據(jù)項(xiàng)使用方括號(hào)括起來
使用下標(biāo)索引來訪問列表中的值
list1 = ['physics', 'chemistry', 1997, 2000]
list2 = [1, 2, 3, 4, 5, 6, 7 ]
print ( list1[0])
print ( list2[1:5])
元組
Python的元組與列表類似,不同之處在于元組的元素不能修改
元組使用小括號(hào),列表使用方括號(hào)
元組創(chuàng)建很簡單,只需要在括號(hào)中添加元素,并使用逗號(hào)隔開
元組中只包含一個(gè)元素時(shí),需要在元素后面添加逗號(hào)
元組中的元素值是不允許修改的,但我們可以對(duì)元組進(jìn)行連接組合
元組中的元素值是不允許刪除的,但我們可以使用del語句來刪除整個(gè)元組
元組與列表的區(qū)別,元組它的關(guān)鍵是不可變性
如果在程序中以列表的形式傳遞一個(gè)對(duì)象的集合,它可能在任何地方改變;如果使用元組的話,則不能
元組提供了一種完整的約束
集合
Python中的集合跟數(shù)學(xué)上的集合是一致的,不允許有重復(fù)元素,而且可以進(jìn)行交集、并集、差集等運(yùn)算
字典
字典是另一種可變?nèi)萜髂P停铱纱鎯?chǔ)任意類型對(duì)象
字典的每個(gè)鍵值 key --> value 對(duì)用冒號(hào) : 分割,每個(gè)鍵值對(duì)之間用逗號(hào) , 分割,整個(gè)字典包括在花括號(hào) {} 中
(1)不允許同一個(gè)鍵出現(xiàn)兩次。創(chuàng)建時(shí)如果同一個(gè)鍵被賦值兩次,后一個(gè)值會(huì)被記住
(2)鍵必須不可變,所以可以用數(shù)字,字符串或元組充當(dāng),所以用列表就不行
函數(shù)
你可以定義一個(gè)由自己想要功能的函數(shù),以下是簡單的規(guī)則:
1:函數(shù)代碼塊以 def 關(guān)鍵詞開頭,后接函數(shù)標(biāo)識(shí)符名稱和圓括號(hào)()
2:任何傳入?yún)?shù)和自變量必須放在圓括號(hào)中間。圓括號(hào)之間可以用于定義參數(shù)
3:函數(shù)的第一行語句可以選擇性地使用文檔字符串—用于存放函數(shù)說明
4:函數(shù)內(nèi)容以冒號(hào)起始,并且縮進(jìn)
5:return [表達(dá)式] 結(jié)束函數(shù),選擇性地返回一個(gè)值給調(diào)用方
定義一個(gè)函數(shù)只給了函數(shù)一個(gè)名稱,指定了函數(shù)里包含的參數(shù),和代碼塊結(jié)構(gòu)。
這個(gè)函數(shù)的基本結(jié)構(gòu)完成以后,你可以通過另一個(gè)函數(shù)調(diào)用執(zhí)行
def f(str):
print(str)
return
f('調(diào)用函數(shù)')
f('再次調(diào)用')
變量作用域
一個(gè)程序的所有的變量并不是在哪個(gè)位置都可以訪問的。訪問權(quán)限決定于這個(gè)變量是在哪里賦值的
變量的作用域決定了在哪一部分程序你可以訪問哪個(gè)特定的變量名稱。兩種最基本的變量作用域如下:
1:全局變量
函數(shù)外的變量擁有全局作用域,可以在整個(gè)程序范圍內(nèi)訪問
2:局部變量
函數(shù)內(nèi)部的變量擁有一個(gè)局部作用域,局部變量只能在其被聲明的函數(shù)內(nèi)部訪問
def foo():
b = 'hello'
def bar(): # Python中可以在函數(shù)內(nèi)部再定義函數(shù)
c = True
print(a)
print(b)
print(c)
bar()
# print(c) # NameError: name 'c' is not defined
if __name__ == '__main__':
a = 100
# print(b) # NameError: name 'b' is not defined
foo()
面向?qū)ο?/h1>
類(Class): 用來描述具有相同的屬性和方法的對(duì)象的集合。它定義了該集合中每個(gè)對(duì)象所共有的屬性和方法,對(duì)象是類的實(shí)例
對(duì)象:通過類定義的數(shù)據(jù)結(jié)構(gòu)實(shí)例,對(duì)象包括兩個(gè)數(shù)據(jù)成員(類變量和實(shí)例變量)和方法
1.使用 class 語句來創(chuàng)建一個(gè)新類,class 之后為類的名稱并以冒號(hào)結(jié)尾,類的方法與普通的函數(shù)只有一個(gè)特別的區(qū)別——它們必須有一個(gè)額外的第一個(gè)參數(shù)名稱, 它的名稱是 self
class Test:
def prt(self):
print(self)
print(self.__class__)
t = Test()
t.prt()
2.可以通過 init 方法接受參數(shù),使用點(diǎn)號(hào) . 來訪問對(duì)象的屬性
import time
class Clock(object):
def __init__(self,hour = 0,min = 0,second = 0):
self.hour = hour
self.min = min
self.second = second
def run(self):
self.second += 1
if self.second == 60:
self.second = 0
self.min += 1
if self.min == 60:
self.min = 0
self.hour += 1
if self.hour == 24:
self.hour = 0
# def __str__(self):
# return '%02d:%02d:%02d:' % (self.hour,self.min,self.second)
def show(self):
return '%02d:%02d:%02d:' % (self.hour,self.min,self.second)
def main():
clock = Clock()
while True:
print(clock.show())
time.sleep(1)
clock.run()
if __name__ == '__main__':
main()