標籤:div 關鍵字 指定 需要 zhang 特定 最小 支援 人工
一.通用序列操作:
列表中所有序列都可以進行特定的操作,包括索引(indexing).分區(slicing).序列相加(adding).乘法,成員資格,長度,最小值,最大值,下面會一一介紹這些操作法。
1.索引:序列是python中最基本的資料結構,序列中所有的序列都是有編號的,從0開始遞推,可通過編號對序列的元素進行訪問,並且支援正負索引。
>>>string=‘hello’ #自訂變數並賦值>>>print string[0] #根據編號取元素
>>>print string[-1]
最後輸出是下標為0的元素‘h‘與‘o’
2.分區:索引對單個元素進行訪問,使用分區可以對一定範圍內的元素進行訪問(包前不包尾),分區通過冒號相隔的兩個索引實現。在互動模式輸入:
>>>number=[1,2,3,4,5,6,7,8]>>>nub=number[1:3] #索引為正數>>>nub2=numbwe[-3:-1] #索引為負數,小的索引放前面,從倒數開始取值
>>>nub3=number[:] #也可不輸入索引,則取得整個數組
>>>nub4=number[0:7:2] #對於這種情況python為我們提供了另一個參數----步數,該參數是隱形設定的,也可理解預設步長為1>>>print nub
[2,3]>>>print nub2
[6,7]
>>>print nub3
[1,2,3,4,5,6,7,8]
>>>print nub4
[1,3,5,7]
3.序列相加:使用加好
>>>a=[1,2,3]>>>b=[4,5,6]>>>print a+b[1,2,3,4,5,6]>>>a=‘hello‘>>>b=‘ word‘>>>c=‘!‘‘hello word!‘
4.乘法:
>>>a=[5]*5>>>print a[5,5,5,5,5]>>>b=‘None‘*3>>>print b‘NoneNoneNone‘
5.成員資格:為檢測一個值是否存在與序列中,用‘in’運算子,這種運算子稱為布林運算子,返回的真值叫布爾值。
>>>a=‘hello word‘>>>print ‘l‘ in atrue>>>b=[‘zhangsan‘,‘lisi‘,‘wangwu‘]>>>print ‘lisi‘ in btrue>>>c=[1,2,3,4,5]print 6 in cfalse
6.長度,最大,最小值:
>>>a=[100,500,300,900,1]>>>print len(a)5>>>print max(a)900>>>print min(b)1>>>print min(5,2,-7,-10)-10
二.列表(方法)
1.append():在列表的末尾添加新元素
文法: list.append(obj)
2.count():計算某個元素在列表中出現的次數
文法: list.count(obj)
3.extend():用於在列表末尾追加另一個序列中的多個值(用新列表擴充原來的列表)。
文法: list.extend(seq) list代表列表,seq代表元素列表
4.index():用於找出某個值與列表第一個匹配的索引位置
文法: list.index(seq)
5.insert():用於將對象插入列表
文法: list.insertindex,obj) index代表對象obj需要插入的索引位置,obj代表插入列表中的對象
6.pop():用於移除列表中的一個元素(預設最後一個元素),並且返回該元素的值
文法: list.pop(obj=list[-1])
7.remove():用於移除列表中的某一個值的第一個匹配值
文法: list.remove(obj)
8.reverse():用於反向列表中的元素
文法: list.reverse()
9.sort():用於對原文列表進行排序
文法: list.sort(funce) funce為選擇性參數
10.clear():用於清空列表。
文法: list.clear()
11.copy():用於複製列表,類似於a[:]
文法: list.copy()
12.進階排序:如果希望元素按特定方式排序(不是sort方法預設的按升序排列元素),就可以自訂比較方便
sort方法有兩個選擇性參數,即key和reverse,要使用他們就要通過名字指定,我們稱之為關鍵字參數。
>>>field=[‘study‘,‘python‘,‘is‘,‘happy‘]>>>filed.sort(key=len) #按字串由短到長排序>>>filed>>>filed.sort(key=len,reverse=true) #按字串由長到短排序,傳遞兩個參數>>>filed[‘python‘,‘study‘,‘happy‘,‘is‘][‘is‘,‘happy‘,‘study‘,‘python‘]>>>num=[5,8,1,3,6]>>>num.sort(reverse=True) #排序後逆序>>>num[8,6,5,3,1]
三.元組
python中的元組與列表相似,不同之處在於元組不能修改(前面多次提到的字串也是不能被修改的)。建立元組的方法很簡單:如果使用逗號分隔一些值就會自動建立元組,如:
>>>1,2,3(1,2,3)>>>‘hello‘,‘word‘(‘hello‘,‘word‘)
還可建立空元組:
>>>()()>>>(1,2,3)(1,2,3)
>>>(1,)
(1,)
1.tuple函數:tuple函數的功能和list函數基本一樣,都是以一個序列作為參數,並把它轉換成元組,如果參數是元組,參數就會被原樣返回,如:
>>>tuple([‘Hello‘,‘Word’])(‘Hello‘,‘Word’)>>>tuple(‘hello‘)(‘h‘,‘e‘,‘l‘,‘l‘,‘o‘)>>>tuple((‘Hello‘,‘Word’))(‘Hello‘,‘Word’)
2.元組的基本操作:
1)訪問元組:可以使用下標索引訪問元組中的值
2)修改元組:元組中的數不可以被修改,但可以對元組進行串連組合,使用‘+’進行串連
3)刪除元組:元組中的數不予許被刪除,但可以只用del語句刪除整個元組
4)元組索引,截取:因為元組也是一個序列,所以可以訪問元組中指定位置的元素也可以截取索引中的一段元素
3.元組內建函數:
1)len(tuple)用於計算元組個數
2)max(tuple)用於計算元組中的最大值
3)min(tuple)用於計算元組中的最小值
4)tuple(seq)用於將列錶轉換成元組
因為元組不可變所以代碼更安全。如果可能,能使用元組代替列表就盡量使用元組。如:
>>>t=(‘a‘,‘b‘,[‘A‘,‘B‘])>>>t[2][0]=‘X‘>>>t[2][1]=‘Y‘>>>t(‘a‘,‘b‘,[‘X‘,‘Y‘])
此處使用了嵌套列表,一個列表包含另一個列表,也可以稱為二維數組。
自興人工智慧------------python入門基礎(2)列表和元祖