#3 列表
#1> 下面這就是乙個列表
aabbccdd = ['
ee','
ff','gg'
]#列表可以儲存資料,包含其中元素可以有很多,是可修改、有次序的。
#下面展示一下兩套索引。
#0 1 2
#aabbccdd = ['ee','ff','gg']
#-3 -2 -1
#可以用兩種方式抽取列表的元素,如下。
h =aabbccdd[0]
(h)i = aabbccdd[-2]
(i)#
對應的輸出結果如下#ee
#ff#強調一點,索引從0開始。
#2> 修改、新增和刪除列表中的元素
#修改可以用下列語句,通俗的講應該叫替換。
aabbccdd[0] = 'kk'
(aabbccdd)
#輸出結果為:['kk', 'ff', 'gg']
#新增元素可以使用下面的方法,預設新增到列表的最後一位。uu'
(aabbccdd)
#輸出結果為:['kk', 'ff', 'gg', 'uu']##
也可以使用方法insert()將元素插入到指定位置,具體如下。
aabbccdd.insert(1,'pp'
(aabbccdd)
#輸出結果為:['kk', 'pp', 'ff', 'gg', 'uu']
#如果知道元素的索引,可以直接用del 刪除對應元素
delaabbccdd[0]
(aabbccdd)
#輸出結果為:['pp', 'ff', 'gg', 'uu']
#使用pop()刪除元素,通俗講是叫提取。預設提取最後乙個元素。
popped_aabbccdd = aabbccdd.pop(1)
(aabbccdd)
(popped_aabbccdd)
#輸出結果為:
#['pp', 'gg', 'uu']#ff
#如果知道元素名稱,可以用remove()直接刪除。
#remove()不具有提取功能。
#如果列表中有重複的元素,方法remove()只刪除索引較小的那乙個。
#如果列表中有重複的元素就需要用if迴圈解決。gg'
(aabbccdd)
aaccddee = aabbccdd.remove('gg'
(aabbccdd)
(aaccddee)
#對應的結果如下:
#['pp', 'gg', 'uu', 'gg']
#['pp', 'uu', 'gg']
#none
#3> 列表排序
#用方法sort()對列表進行排序,可以永久改變列表順序。
aabbccdd.sort()
(aabbccdd)
#輸出結果為:['gg', 'pp', 'uu']
#傳入reverse = true,可以相反順序排序。
aabbccdd.sort(reverse =true)
(aabbccdd)
#輸出結果為:['uu', 'pp', 'gg']
#直接將列表傳入sorted()可以臨時改變列表排序,也同樣適用於方法reverse,語句如下。
#print(sorted(aabbccdd,reverse = true))
#方法reverse()可以倒著列印列表,但可以隨時恢復到原來的順序,只需要再呼叫這個方法即可。
aabbccdd.reverse()
(aabbccdd)
#對應結果如下:['gg', 'pp', 'uu']
#4> 確定列表長度
#使用方法len()可以確定列表長度。
(len(aabbccdd))
#輸出結果為:3
#5> 遍歷列表
#下面重新定義乙個新的列表
abc = ['
a','
b','
c','
d','e'
]for cc in
abc:
(cc)
#簡單兩行**就可以實現遍歷的功能,結果如下#a
#b#c
#d#e
#使用for時要注意後面有個冒號,如,for cc in abc:<----
#6> 使用函式range()建立數值列表
#可以使用list()和range()配合直接生成數值列表
numbers = list(range(1,10))
(numbers)
#注意,使用range()生成的數字是有頭無尾的,所以上述**的結果如下。
#[1, 2, 3, 4, 5, 6, 7, 8, 9]
#7> 對數字列表的簡單統計
#使用方法max()、min()、sum()對列表秋最大值,最小值和總和
(min(numbers))
(max(numbers))
(sum(numbers))
#結果如下。#1
#9#45
#8> 列表切片
#切片就是說提取列表的一部分,且不改變原列表。
#基本形式是:[起始索引:終止索引],也遵循有頭無尾原則。
#舉例如下。
print(numbers[:]) #
又叫複製列表
print(numbers[2:8])
print(numbers[:8])
print(numbers[:-1])
print(numbers[2:])
#結果如下
#[1, 2, 3, 4, 5, 6, 7, 8, 9]
#[3, 4, 5, 6, 7, 8]
#[1, 2, 3, 4, 5, 6, 7, 8]
#[1, 2, 3, 4, 5, 6, 7, 8]
#[3, 4, 5, 6, 7, 8, 9]
#請讀者自行對比這五種切片的異同。
#9> 元組
#他是一種特殊的列表,規則限定其中的元素無法被改變,只能被再次賦值。
#元組是用()表達
yuanzu1 = ('
s','
ss','
sss'
)yuanzu1['s
'] = '
ssss'#
這時,python就會報錯,如下。
#typeerror: 'tuple' object does not support item assignment
#可以看到元組裡的元素確實不能被修改。
#但是對其做賦值操作是可以的。
yuanzu1 = ('
s','
ss','
sss'
)yuanzu1 = ('
ssssss')
(yuanzu1)
#結果為:ssssss
第三節 列表 元組 字典
列表 list 的屬性 有序的切片取值 索引取值 列表可以被修改 列表可以巢狀任何型別 可以被for迴圈 list 將字串轉換成列表 列表轉換成字串 test asd asd fd v join test join的引數是可迭代物件 print v asdasdfd enumerate在字典上是列舉...
編譯原理 第三節
我們知道世界上存在很多種語言 我們可以把他們分為自然語言 人們日常交流的工具 和程式語言。自然語言複雜且難以描述,程式語言結構規整,便於處理。但兩者又有共性,即核心都由語法和語義兩部分組成。那什麼是語言呢?首先來看一下字母表定義 字母表是元素的非空有窮集合。字母表包含了語言中允許出現的全部符號。例如...
Itween筆記 第三節
itween關於動畫執行的補充.itween.camerafadefrom itween.hash amount 1f,time 2f 在兩秒結束後.itween.camerafadefrom itween.hash amount 1f,time 2f,oncomplete itweentest o...