最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python學(xué)習(xí)筆記基本數(shù)據(jù)結(jié)構(gòu)之序列類(lèi)型list tuple range用法分析

 更新時(shí)間:2019年06月08日 10:34:31   作者:feesland  
這篇文章主要介紹了Python學(xué)習(xí)筆記基本數(shù)據(jù)結(jié)構(gòu)之序列類(lèi)型list tuple range用法,結(jié)合具體實(shí)例形式分析了Python序列類(lèi)型list tuple range基本概念、定義與使用技巧,需要的朋友可以參考下

本文實(shí)例講述了Python學(xué)習(xí)筆記基本數(shù)據(jù)結(jié)構(gòu)之序列類(lèi)型list tuple range用法。分享給大家供大家參考,具體如下:

list 和 tuple

  • list:列表,由 [] 標(biāo)識(shí); 有序;可改變列表元素
  • tuple:元組,由 () 標(biāo)識(shí); 有序;不可改變?cè)M元素(和list的主要區(qū)別)

list 和 tuple 的創(chuàng)建:

print([])               # 空l(shuí)ist
print(["a",1,True])          # 元素類(lèi)型不限
print([x for x in range(0,6)])    # 列表推導(dǎo)式
print(list("a"),type(list("a")))   # 強(qiáng)制轉(zhuǎn)化
print(())               # 空tuple
print((1))              # 不是tuple
print((1,))              # 單一元素tuple 一定要加,
print(("a",1,True))          # 元素類(lèi)型不限
print(tuple("a"),type(tuple("a")))  # 強(qiáng)制轉(zhuǎn)化

空l(shuí)ist l = []

list 用一對(duì)方括號(hào),用','隔開(kāi)里面的元素  l = [a]   l = ["a",1,True]  元素類(lèi)型不限

列表推導(dǎo)式,如:[x for x in range(0,6)] (下方會(huì)詳細(xì)介紹 range 及 列表推導(dǎo)式)

類(lèi)型轉(zhuǎn)換 list()

空tuple  t = ()

tuple 若只有一個(gè)元素時(shí),注意表示為  t = (1,)  一定要有逗號(hào)

tuple 用一對(duì)圓括號(hào),用','隔開(kāi)里面多個(gè)的元素  t = ("a",1,True)  元素類(lèi)型不限

類(lèi)型轉(zhuǎn)換 tuple()

range

range 可方便的生成一個(gè)等差的序列,有兩種表示 range(stop) 、range(start, stop[, step]) ; 通常用在 for循環(huán)語(yǔ)句中

range(stop) 表示 0 到 stop(不包含stop) 等差為1 的數(shù),如 range(4) 表示 0 1 2 3

range(start, stop[, step]) 表示 從 start 到 stop(不包含stop) 等差為step的數(shù);step缺省為1,可設(shè)置為負(fù)數(shù)

print(type(range(4)))          # range本身就是一個(gè)type
for i in range(4):
  print(i)              # 0 1 2 3
for i in range(-1):           # 從0計(jì)數(shù),無(wú)值
  print(i)
for i in range(4,7):          # 4 5 6
  print(i)
for i in range(2,7,2):         # 2 4 6
  print(i)
for i in range(5,2,-1):         # 5 4 3
  print(i)

序列操作

一般操作,不改變list本身

Operation Result
x in s True if an item of s is equal to x, else False
x not in s False if an item of s is equal to x, else True
s + t the concatenation of s and t
s * n or n * s n shallow copies of s concatenated
s[i] ith item of s, origin 0
s[i:j] slice of s from i to j
s[i:j:k] slice of s from i to j with step k
len(s) length of s
min(s) smallest item of s
max(s) largest item of s
s.index(x[, i[, j]]) index of the first occurrence of x in s (at or after index i and before index j)
s.count(x) total number of occurrences of x in s

s = ["a",1,True,["b"],2]    
print("a" in s)        # 判斷元素存在于s
print("a" not in s)      # 判斷元素不存在于s
print("b" in s)
print(1.0 in s)        # 這邊不判斷int float類(lèi)型不同
print("1" in s)        # 這邊的1為字符串
a = [1,2]
b = [2,1,0]
print(a+b)           # 序列相加
print(a*3)           # 序列乘法
s = [0,1.0,2,3,4,5,6,7,8] 
print(s[0],s[2],s[3])     # 通過(guò)下標(biāo)來(lái)取出對(duì)應(yīng)的元素
print(type(s[0]))      
print(type(s[1]))
print(s[2:4])         # 取出一段list
print(s[2:7:2])        # 根據(jù)步長(zhǎng)取出一段list
print(len(s))         # list長(zhǎng)度,即包含幾個(gè)元素
sum = 0            
for i in range(0,len(s)):   # 使用for循環(huán)來(lái)取出list的每個(gè)元素
  print(s[i])
  sum += i          # 賦值的簡(jiǎn)單表達(dá)式,相當(dāng)于 sum = sum + i
print(sum)           # 總和
print(min(s),max(s))      # 取最小/最大;注意元素類(lèi)型間若不可比較,會(huì)報(bào)錯(cuò)
s = [2,3,1,2,2,3]
print(s.index(2))       # 查找對(duì)應(yīng)元素第一次出現(xiàn)的下標(biāo)
# print(s.index(4))      # 不存在該元素會(huì)報(bào)錯(cuò)
print(s.index(2,3))      # 從下標(biāo)為3的開(kāi)始找起
print(s.index(2,3,4))     # 從下標(biāo)為3到下標(biāo)4的階段內(nèi)找
print(s.count(2))       # 輸出為2的元素的個(gè)數(shù)
print(s.count("2"))      # 找不到匹配元素,返回0

上方列出的操作方法對(duì) tuple 也都適用,因?yàn)椴⒉桓淖冃蛄斜旧淼脑?,?/p>

s = (2,3,1,2,2,3)
print(s[2],s[2:4],len(s),s.count(2))      # 對(duì)tuple均適用

改變序列的操作:僅對(duì) list 適用;若對(duì) tuple 操作,會(huì)報(bào)錯(cuò);clear()copy() 是 Python 3.3 才新增的方法

Operation Result
s[i] = x item i of s is replaced by x
s[i:j] = t slice of s from i to j is replaced by the contents of the iterable t
s[i:j:k] = t the elements of s[i:j:k] are replaced by those of t
del s[i:j] same as s[i:j] = []
del s[i:j:k] removes the elements of s[i:j:k] from the list
s.pop([i]) retrieves the item at i and also removes it from s
s.remove(x) remove the first item from s where s[i] == x
s.clear() removes all items from s (same as del s[:])
s.append(x) appends x to the end of the sequence (same as s[len(s):len(s)] = [x])
s.extend(t) extends s with the contents of t (same as s[len(s):len(s)] = t)
s.insert(i, x) inserts x into s at the index given by i (same as s[i:i] = [x])
s.copy() creates a shallow copy of s (same as s[:])
s.reverse() reverses the items of s in place

list的增、刪、改的操作實(shí)際都比較實(shí)用,需要熟練掌握

list元素更改

可對(duì) list 不同的下標(biāo)表示法做以下操作,一般 list 下標(biāo)的操作僅作對(duì)單一元素的更改賦值,如 s[0]=1 ;對(duì)多個(gè)元素的操作見(jiàn)下方示例(僅供參考)

s = [0,1,2,3]
s[0] = "1"
print(s)            # 對(duì)list的某一元素賦另外的值,類(lèi)型也跟隨改變
s[4] = 1            # 不可超過(guò)原list的長(zhǎng)度,會(huì)報(bào)錯(cuò)
s[0:3] = [2,3,4]        # 可對(duì)一段元素賦另外的值
print(s)    
s[0:3] = ["x","x"]        # 可缺少,元素個(gè)數(shù)也就相應(yīng)的減少了
print(s)    
s[0:2] = ["x","x","x","x"]    # 可增加,元素個(gè)數(shù)也就相應(yīng)的減加了
print(s)  
s[0] = [0,0]          # 單個(gè)元素注意,相當(dāng)于賦值,把序列賦予該元素
print(s)  
s[1:2] = [0,0]        
print(s)  
s = [0,1,2,3,4,5,6,7,8]
s[1:8:2] = ["x"]*4      
# s[1:8:2] = ["x"]*3      # 這種表示方式元素個(gè)數(shù)一定需要相同,不然會(huì)報(bào)錯(cuò)
print(s)

list元素刪除

s = [0,1,2,3,4,5,6,7,8]
del s[0:4]            # 刪除對(duì)應(yīng)的元素  
print(s)  
s = [0,1,2,3,4,5,6,7,8]
del s[1:8:2]           # 做刪除
print(s)
s = [0,1,2,3,4,5,6,7,8]
s.pop(3)
print(s.pop(3),s)         # 做刪除,并且返回該元素的值
print(s.pop(),s)         # 默認(rèn)刪除最后一個(gè)
s = [2,"1",1.0,1,2,1]
s.remove(1)            # 刪除第一個(gè)值為 1 的元素
print(s)          
s.clear()             # 置空,Python3.3引入
print(s)

list元素增加

s = [0,1,2,3,4]
s.append(5)            # list 最后加一個(gè)元素
print(s)
s.extend([6,7])          # list 最后拼接序列
print(s)
s.extend(range(3))
print(s)
s.insert(1,["x"])         # 在1的位置插入["x"]
print(s)

其他操作,reversecopy

s = [1,2,3]
c = s.copy()          # 相當(dāng)于 c = s
print(c)
c.reverse()
print(c)
s = [2,3,1,4]
s.sort()            # 排序
print(s)
# s = ["b",1,"a",True]     # 報(bào)錯(cuò),必須是可比較的類(lèi)型
s = ["b","a"]
s.sort()  
print(s)

更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專(zhuān)題:《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》、《Python入門(mén)與進(jìn)階經(jīng)典教程》及《Python文件與目錄操作技巧匯總

希望本文所述對(duì)大家Python程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • 在Python程序中操作MySQL的基本方法

    在Python程序中操作MySQL的基本方法

    這篇文章主要介紹了再Python程序中操作MySQL的基本方法,主要借助了MYSQLdb module,需要的朋友可以參考下
    2015-07-07
  • pyqt5 使用cv2 顯示圖片,攝像頭的實(shí)例

    pyqt5 使用cv2 顯示圖片,攝像頭的實(shí)例

    今天小編就為大家分享一篇pyqt5 使用cv2 顯示圖片,攝像頭的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-06-06
  • Python中實(shí)現(xiàn) xls 文件轉(zhuǎn) xlsx的4種方法(示例詳解)

    Python中實(shí)現(xiàn) xls 文件轉(zhuǎn) xlsx的4種方法(示例詳解)

    在 Python 中,可以采用 pandas、pyexcel、win32com 和 xls2xlsx 這四個(gè)模塊,實(shí)現(xiàn) xls 轉(zhuǎn) xlsx 格式,本文以 Excel 示例文件test_Excel.xls 為例結(jié)合示例代碼給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧
    2024-06-06
  • python中 ? : 三元表達(dá)式的使用介紹

    python中 ? : 三元表達(dá)式的使用介紹

    剛剛學(xué)python的時(shí)候,時(shí)常糾結(jié)于python中沒(méi)有C語(yǔ)言中 ? : 的實(shí)現(xiàn),今天終于發(fā)現(xiàn)了兩種python的實(shí)現(xiàn)方式
    2013-10-10
  • python運(yùn)算符號(hào)詳細(xì)介紹

    python運(yùn)算符號(hào)詳細(xì)介紹

    大家好,本篇文章主要講的是python運(yùn)算符號(hào)詳細(xì)介紹,感興趣的同學(xué)趕快來(lái)看一看吧,對(duì)你有幫助的話(huà)記得收藏一下,方便下次瀏覽
    2021-12-12
  • 使用Python開(kāi)發(fā)一個(gè)簡(jiǎn)單的本地圖片服務(wù)器

    使用Python開(kāi)發(fā)一個(gè)簡(jiǎn)單的本地圖片服務(wù)器

    本文介紹了如何結(jié)合wxPython構(gòu)建的圖形用戶(hù)界面GUI和Python內(nèi)建的 Web服務(wù)器功能,在本地網(wǎng)絡(luò)中搭建一個(gè)私人的,即開(kāi)即用的網(wǎng)頁(yè)相冊(cè),文中的示例代碼講解詳細(xì),感興趣的小伙伴可以嘗試一下
    2025-04-04
  • python如何批量讀取.mat文件并保存成.npy

    python如何批量讀取.mat文件并保存成.npy

    這篇文章主要介紹了python如何批量讀取.mat文件并保存成.npy問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-12-12
  • Python 利用pydub庫(kù)操作音頻文件的方法

    Python 利用pydub庫(kù)操作音頻文件的方法

    今天小編就為大家分享一篇Python 利用pydub庫(kù)操作音頻文件的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-01-01
  • Python HTMLTestRunner可視化報(bào)告實(shí)現(xiàn)過(guò)程解析

    Python HTMLTestRunner可視化報(bào)告實(shí)現(xiàn)過(guò)程解析

    這篇文章主要介紹了Python HTMLTestRunner可視化報(bào)告實(shí)現(xiàn)過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-04-04
  • Python報(bào)錯(cuò)ValueError: cannot reindex from a duplicate axis的解決方法

    Python報(bào)錯(cuò)ValueError: cannot reindex from 

    當(dāng)處理Pandas數(shù)據(jù)框(DataFrame)時(shí),你是否遇到過(guò)ValueError: cannot reindex from a duplicate axis的報(bào)錯(cuò)?這個(gè)問(wèn)題通常發(fā)生在嘗試對(duì)DataFrame進(jìn)行重索引時(shí),如果索引有重復(fù)值,就會(huì)觸發(fā)這個(gè)錯(cuò)誤,下面,我們將探討這個(gè)問(wèn)題并提供解決方法
    2024-09-09

最新評(píng)論

肥城市| 璧山县| 澎湖县| 红桥区| 馆陶县| 佛冈县| 商丘市| 砚山县| 河北省| 西吉县| 贡嘎县| 湖南省| 海林市| 黔江区| 温州市| 田阳县| 廉江市| 枣强县| 民丰县| 奈曼旗| 广水市| 遂溪县| 文山县| 清原| 游戏| 新河县| 宾阳县| 云霄县| 长寿区| 永德县| 栖霞市| 清水河县| 高陵县| 正蓝旗| 毕节市| 阳高县| 福泉市| 平乐县| 特克斯县| 盐源县| 涞水县|