您好,登錄后才能下訂單哦!
什么是python序列?針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
Python中有四種內建的數據結構,即列表、元組、字典、集合。現在先說列表和元組,它們兩個和以前提到很多次的字符串,其實都屬于序列。
一、列表(list):
1. list 是處理一組有序項目的數據結構,即你可以在一個列表中存儲一個序列的項目。
列表中的項目應該包括在方括號中,這樣Python 就知道你是在指明一個列表。一旦你創建了一個列表,你可以添加、刪除或是搜索列表中的項目。由于你可以
增加或刪除項目,我們說列表是可變的數據類型,即這種類型是可以被改變的。
列表根據列表中的元素可以簡單地分為三類:普通(同一數據類型)、混合(混合數據類型)、空列表。
列表一些很常用的內置方法:append() , extend() , insert() , remove() , del , pop() , count() , index() , reverse() , sort()等等。這些內置方法的參數和
用法都很簡單,只需說明一個,sort 函數:sort([*, key=None, reverse=None]),注意,在Python3中,第一個參數為不可變(排序的算法默認為歸并排序), 無法傳入其他的實參,第二個參數代表參加排序的關鍵字,可以采用lambda函數:
>>>L = [('b',2),('a',1),('c',3),('d',4)] >>>L.sort(key=lambda x:x[1]) >>>L >>>[('a', 1), ('b', 2), ('c', 3), ('d', 4)]
第三個參數reverse有兩個值可選,默認False為從小到大排序,設為True為從大到小排序。三個參數都是可選的。
2. 很多操作符也可以用于列表,如比較操作符,邏輯操作符(and or not),‘+’拼接操作符(只能用于列表間的拼接不能用于添加元素相當于extend),’*‘重復操作符,
成員關系操作符(in/not in)。注意操作符的用法和運算規則。
3. 列表同樣可以采用切片(slice)操作,用法規則幾乎和字符串的完全相同。
4. 注意,y = x[:] 通過切片操作將列表x的元素全部拷貝給y,如果簡單的把x賦值給y:y = x,y和x還是指向同一個列表,并沒有產生新的副本。注意理解教學視頻里的一句話:Python里的變量名其實就相當于貼標簽。
二、元組(tuple):
1. 元組用來將多樣的對象集合到一起。元組和列表十分類似,只不過元組和字符串一樣是不可變的,即你不能修改元組。
元組通過圓括號中用逗號分割的項目定義。
元組通常用在使語句或用戶定義的函數能夠安全地采用一組值的時候,即被使用的元組的值不會改變。
2. 注意,在元組最關鍵的其實不是圓括號,而是’ ,‘號。特別的,如果Python中只有一個元素,一定要寫成(a,),記住下面兩個例子:
a = (3), type(a) = int ; b = 3, 4, 5 type(b) = tuple。可以看出元組中逗號是關鍵,甚至可以不要括號,事實上確實不是必須的。
3. 對于上文提到的可以作用于列表的操作符同樣可以作用于元組。
4. 因為元組是不可變的,但是如果你確實需要”改變“元組的元素,可以考慮采用拼接的方法,如:
>>> L = ('I','love','you') >>> L = L[:1] + ('really',) +L[1:] >>> L ('I', 'really', 'love', 'you')
注意,這里的實質并不是”改變“元組,元組本身是不可變的毫無疑問。這里的實質只是通過拼接構造了一個新的元組,然后把 ‘L’ 這個標簽貼到了新的元組上面,舊的元組依然存在,且保持不變。(當然適當的時機Python的垃圾回收機制會回收掉它)。
關于什么是python序列問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。