python生序列表 python的序列之列表二

2021-10-18 15:33:28 字數 2309 閱讀 6023

注:本文測試環境為 python2.7

注:本文主要介紹列表的通用方法

測試list

list1 = [1,2,3,4]

insert方法:

方法解釋:在指定位置插入物件

引數:引數1:index

引數2:object

**示例:

list1.insert(-1,1) #在列表末尾插入物件

list1.insert(0,1) #在列表開頭插入物件

返回值:無

注:方法執行後,直接修改原列表list1

pop方法:

方法解釋:刪除指定索引的元素

引數:無參時預設是索引-1(列表的最後乙個成員)

可選引數一:index

**示例:

eg: s = list1.pop(1) ,s=刪除前的list1[1]

返回值:被刪除的索引處的元素

注1:當索引不存在時,會丟擲越界的錯誤

注2:pop方法可以實現棧的操作

extend方法:

方法解釋:在列表尾部插入序列

引數:引數一:序列

**示例:

list2 = [1]

list1.extend(list2)

返回值:無

注:直接對原始列表list1進行修改,常用於連線列表,eg:list1 = list1+list2

2018/07/16備註

引數一使用列表或元組

當引數使用元組時,是將成員分別追加到列表尾部

index方法:

方法解釋:返回指定元素在列表中最先出現的位置

引數:引數1:object

引數2:startindex(可選,預設0)

引數3:endindex(可選)

**示例:

list1[0] = 1

則 list1.index(1) = 0

如果想輸出指定物件的指定位置的索引,就需要用到另外兩個引數

index(objetc,startindex,endindex)

startindex 開始索引

endindex 結束索引

注:物件不存在時,會丟擲錯誤

方法解釋:在列表尾部插入資料

引數:引數1:object

**示例:

返回值:無

count方法:

方法解釋:返回列表中指定物件出現的次數

引數:引數1:object

**示例:

ret = list1.count(11)

返回值:ret (int>=0)

注:也可以根據返回次數=0,來判斷該物件不在列表中

remove方法:

方法解釋:刪除列表中最先出現的該物件

引數:引數1:object

返回值:

**示例:

list1.count(1)

注1:該元素有多個時,只會刪除第乙個

注:物件不存在時,會丟擲錯誤,最好配合count方法和in來進行判斷

reverse方法:

方法解釋:反轉原始列表

引數:無參

**示例:

list1.reverse()

返回值:無返回值

注:直接修改list1為其反轉序列

注:內建函式reversed(object)

引數1:

序列**示例:

list1 = [1,2,3,4]

list2 = list(reversed(list1))

返回值:迭代器

注:返回的list2為list1的反轉序列,但是不會對原始序列list1產生影響

注2:轉換後產生的效果與list1[::-1]類似

sort方法:

方法解釋:對序列進行公升序或者降序排列

**示例:

list1.sort()

注:對list1進行公升序排列

list1.sort(reverse=true)

注:對list1進行降序排列

注:內建函式sorted()

方法解釋:返回原始序列排序後的序列

**示例:

list2 = sorted(list1)

注:公升序排列,不會對原始序列list1產生影響

list2 = sorted(list1,reverse=true)

注:降序排列,不會對原始需要list1產生影響

ps:當列表使用完成後,不想使用可以使用del進行刪除

list1 = [1,2,3,4]

del list1

print list1

這時候就會丟擲 list1沒有被定義的錯誤

python演算法題 鍊錶反轉詳解 python

鍊錶的反轉是乙個很常見 很基礎的資料結構題,輸入乙個單向鍊錶,輸出逆序反轉後的鍊錶,如圖 上面的鍊錶轉換成下面的鍊錶。實現鍊錶反轉有兩種方式,一種是迴圈迭代,另外一種方式是遞迴。第一種方式 循壞迭代 循壞迭代演算法需要三個臨時變數 pre head next,臨界條件是鍊錶為none或者鍊錶就只有乙...

12 1 生成序列

12.1 生成序列 生成序列有幾種方法,先來看一下我們的選擇,直接的方法是實現ienumerator 介面,提供 current 屬性,和 movenext方法,將列舉數物件移動到下乙個元素。這要求顯式建立有可變狀態的物件,很明顯違反了函式式風格。通常的做法是隱藏可變性,提供更具宣告式的方法,表達生...

12 1 生成序列

12.1 生成序列 有幾種生成序列的技術,我們來看一下我們的選項。直接的方法是實現 ienumerator 介面,提供 current 屬性和 movenext 方法,它將列舉數物件移動到下乙個元素。這迫使我們顯式建立有可變狀態的物件,這很明顯違反了函式式的風格。通常,我們可以應用隱藏可變異的技術,...