list所有元素相加 python_Python基础入门笔记:列表、元组(阿里云天池)
9
9
今日主要內容:列表、元組
列表
簡單的數據類型:
整型
浮點型
布爾型
容器數據類型:
列表
元組
字典?
集合
字符串
1.?列表的定義
列表是有序集合,沒有固定的大小,能夠保存任意數量任意類型的Python對象,語法為[元素1,元素2,…,元素n]
·?關鍵點是?中括號[]?和 逗號,?
·?中括號 把所有元素綁在一起
·?逗號 將每個元素一一分開
2.?列表的創建
·?創建一個普通列表? ?x=[元素1,元素2,…,元素n]
·?利用range()創建列表
· 利用推導式創建列表
【注】由于list的元素可以是任何對象,因此列表中所保存的是對象的指針。即使保存一個簡單的[1,2,3],也有3個指針和3個整數對;x=[a]*4操作中,只是創建4個指向list的引用,所以一旦a改變,x中的4個a也會隨之改變。
·?創建一個混合列表
· 創建一個空列表
列表不像元組,列表內容可更改(mutable),因此附加(append,extend)插入(insert)、刪除(remove、pop)這些操作都可以用在它身上。
3. 向列表中添加元素
list.append(obj)?在列表末尾添加新的對象,只接受一個參數,參數可以是任何數據類型,被迫追加的元素在list中保持著原結構類型。
此元素如果是一個list,那么這個list將作為一個整體進行追加,注意append()和extend()的區別。
list.extend(seq) 在末尾一次性追加另一個序列中的多個值(用新列表擴展原來的列表)
嚴格來說append是追加,把一個東西整體添加在列表后,而extend是擴展,把一個東西里的所有元素添加在列表后。
list.insert(index,obj) 在編號index位置插入obj。
4. 刪除列表中的元素
list.remove(obj)?移除列表中某個值的第一個匹配項。
list.pop([index=-1])?移除列表中的一個元素(默認最后一個元素),并且返回該元素的值。
remove和pop都可以刪除元素,前者是指定具體要刪除的元素,后者是指定一個索引。
del??var1[,var2 ……]?刪除單個或多個對象(已知元素在列表中的位置的情況下)。
如果要從列表中刪除一個元素,且不在以任何方式使用它,就使用del語句;如果要在刪除元素后還繼續使用它,就使用方法pop()
5. 獲取列表中的元素
通過元素的索引值,從列表中獲取單個元素,注意,列表索引值是從0開始的。
通過將索引值指定為-1,可讓Python返回最后一個列表元素,索引-2返回倒數第二個列表元素,依此類推。
切片的通用寫法是 start : stop?:?step
情況1-“start:”
以step為1(默認)從編號start往列表尾部切片。
情況2-“:stop”
以step為1(默認)從列表頭部往編號stop切片。
情況3-“start:stop”
以step為1(默認)從編號start往編號stop切片。
情況4-“start:stop:step”
以具體的step從編號start往編號stop切片。注意最后把step設為-1,相當于將列表反向排列。
情況5-“:”
復制列表中的所有元素(淺拷貝)
6. 列表的常用操作符
等號操作符:==
連接操作符 +
重復操作符 *
成員關系操作符?in、?not in
等號==?只有成員、成員位置都相同時才返回True。
列表拼接有兩種方式,用?加號+ 和 乘號* ,前者首尾拼接,后者復制拼接。
前面三種方法(append,extend,insert)可對列表增加元素,他們沒有返回值,是直接修改了原數據對象。而將兩個list相加,需要創建新的list對象,從而需要消耗額外的內存,特別是當list較大時,盡量不要使用“+”來添加list。
7. 列表的其它方法
list.count(obj)?統計某個元素在列表中出現的次數。
list.index(x[,start[,end]])?從列表中找出某個值第一個匹配項的索引位置。
list.reverse()?反向列表中的元素。
list.sort(key=None,reverse=False)?對原列表進行排序。
key——主要是用來進行比較的元素,只有一個參數,具體的函數的參數就是取自于可迭代對象中,指定可迭代對象中的一個元素來進行排序。
reverse——排序規則,reverse=True降序,reverse=False升序(默認)。
該方法沒有返回值,但是會對列表的對象進行排序。
元組
元組 定義語法為:(元素1,元素2,……,元素n)
小括號把所有元素綁在一起
逗號將每個元素一一分開
1. 創建和訪問一個元組
Python的元組與列表類似,不同之處在于tuple被創建后就不能對其進行修改,類似字符串。
元組使用小括號,列表使用方括號。
元組與列表相似,也是用整數來對它進行索引(indexing)和切片(slicing)。
創建元組可以使用小括號(),也可以什么都不用,為了可讀性,建議還是用()。
元組中只包含一個元素時,需要在元素后面添加逗號,否則括號會被當作運算符使用。
2. 更新和刪除一個元組
元組有不可更改(immutable)的性質,因此不能直接給元組的元素賦值,但是只要元組中的元素可更改(mutable),那么我們可以直接更改其元素,注意這與賦值其元素不同。
3. 元組相關的操作符
等號操作符:==
連接操作符 +
重復操作符 *
成員關系操作符?in、?not in
等號== 只有成員、成員位置都相同時才返回True。
元組拼接有兩種方式,用?加號+?和?乘號*?,前者首尾拼接,后者復制拼接。
4. 內置方法
元組大小和內容都不可更改,因此只有count和index兩種方法。
count('python') 是記錄在元組t中該元素出現幾次
index(10.31)?是找到該元素在元組t的索引
5. 解壓元組
解壓(unpack)一維元組(有幾個元素左邊括號定義幾個變量)
解壓二維元組(按照元組里的元組結構來定義變量)
如果只想要元組中的其中幾個元素,用 通配符 *?,英文叫?wildcard,在計算機語言中代表一個或多個元素,下例就是把多個元素丟給了 rest 變量。
如果根本不在乎rest變量,可直接用?通配符* 加上 下劃線_。
總結
以上是生活随笔為你收集整理的list所有元素相加 python_Python基础入门笔记:列表、元组(阿里云天池)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: efcore 实体配置_快速掌握EF C
- 下一篇: 蒙特卡洛树搜索的主要流程有哪些_海运拼箱