這篇文章給大家分享的是有關(guān)python中如何操作使用列表的內(nèi)容。小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,一起跟隨小編過來看看吧。
成都創(chuàng)新互聯(lián)是一家專注于網(wǎng)站建設(shè)、成都做網(wǎng)站與策劃設(shè)計(jì),睢陽網(wǎng)站建設(shè)哪家好?成都創(chuàng)新互聯(lián)做網(wǎng)站,專注于網(wǎng)站建設(shè)10余年,網(wǎng)設(shè)計(jì)領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:睢陽等地區(qū)。睢陽做網(wǎng)站價(jià)格咨詢:18980820575
# 列表的基本操作 # 賦值、刪除列表元素、分片賦值 # 1. 列表元素的賦值 values = ["Bill", "Mary", "John"] values[0] = "Mike" values[1] = 10.4 values[-1] = "Joe" # values[-5] = "abc" # 拋出異常 print(values) # ['Mike', 10.4, 'Joe'] # 刪除列表中的元素 numbers = [1,2,3,4,5,6,7,8] del numbers[3] print(len(numbers)) # 7 print(numbers) # [1, 2, 3, 5, 6, 7, 8] # 分片賦值 names = ["Bill", "Joe", "李寧","馬云"] print(names[3:]) # ['馬云'] names[3:] = ["a","b","c"] print(len(names)) # 6 print(names) # ['Bill', 'Joe', '李寧', 'a', 'b', 'c'] name = list("John") # 將一個(gè)字符串轉(zhuǎn)化為一個(gè)列表 print(name) #['J', 'o', 'h', 'n'] name[2:] = list("e") print(name) ## ['J', 'o', 'e'] print(numbers) # [1, 2, 3, 5, 6, 7, 8] # 刪除 和del 函數(shù)差不多 但是del只能刪除一個(gè) numbers[3:6] = [] print(numbers) # [1, 2, 3, 8] -------------------- 列表與元組的加法 乘法 data1 = [1,2,3,4] data2 = [2,3,4,5,"hello"] data3 = data1 + data2 print(data3) # [1, 2, 3, 4, 2, 3, 4, 5, 'hello'] num1 = (1,2,3,4) num2 = (3,4,'ff') num3 = num1 + num2 print(num3) # (1, 2, 3, 4, 3, 4, 'ff') 如何把一個(gè)元組 強(qiáng)制的轉(zhuǎn)化為一個(gè)列表呢? num1 = (1,2,3,4) print(list(num1)) # [1, 2, 3, 4] 如何把一個(gè)列表 強(qiáng)制轉(zhuǎn)化為一個(gè)元組呢? data1 = [1,2,3,4] print(tuple(data1)) # (1, 2, 3, 4) 列表與元組的乘法 a1 = [1,2,3,4] print(a1 * 2) # [1, 2, 3, 4, 1, 2, 3, 4] b1 = (2,3,4,5) print(b1 * 3) # (2, 3, 4, 5, 2, 3, 4, 5, 2, 3, 4, 5) 字符串乘法: print('a' * 10) # aaaaaaaaaa print('a,' * 10) # a,a,a,a,a,a,a,a,a,a, data1 = [1,2,3,4] num2 = (3,4,'ff') print(data1 + list(num2) * 2) # [1, 2, 3, 4, 3, 4, 'ff', 3, 4, 'ff'] 先做乘法 再做加法 ----------------------------------------------- 第8課 列表中的方法 重點(diǎn)啊 ****** # 列表方法 ''' 1. append:在列表最后(結(jié)尾)插入新的值,改變?cè)瓉淼牧斜? 2. clear:用于清除列表的所有內(nèi)容 3. copy:用于復(fù)制一個(gè)列表 //通過分片也是可以復(fù)制一個(gè)列表的 4. count:用于統(tǒng)計(jì)某個(gè)元素在列表中出現(xiàn)的次數(shù) 5. extend:用于在列表結(jié)尾插入另一個(gè)列表,也就是讓兩個(gè)列表首尾相接。 該方法改變的是被擴(kuò)展的列表。 list1.extend(list2)//這一步是 把list2接到list1的后面 他改變的是list1的本身 比如list1長(zhǎng)度為3 list2長(zhǎng)度為4 那么我們調(diào)用這個(gè)方法后 list1的長(zhǎng)度 就變成了7 改變了list1的長(zhǎng)度 ,而我們之前講過的 列表的相加創(chuàng)建一個(gè)新的列表 和extend 這個(gè)方法 是本質(zhì)的區(qū)別 6. index:用于從列表中找出某個(gè)值第一次出現(xiàn)的索引位置 7. insert:用于將值插入到列表中的指定位置 //這個(gè)方法可以取代append 因?yàn)榭梢栽诹斜碇械娜我馕恢貌迦? 8. pop:用于移除彈出列表中的元素(默認(rèn)是最后一個(gè)元素),并返回該元素的值 9. remove:用于移除列表中某個(gè)值的第一次匹配項(xiàng) 10. reverse:用于將列表中的元素反向存放 // 把序列中的步長(zhǎng)設(shè)置成-1的效果是一樣的 11. sort:用于對(duì)列表進(jìn)行排序,調(diào)用該方法會(huì)改變?cè)瓉淼牧斜? ''' from sqlalchemy.sql.expression import false print("--------append方法---------") # append:在列表最后(結(jié)尾)插入新的值,改變?cè)瓉淼牧斜? numbers = [1,2,3,4,5] numbers.append(20) print(numbers) #[1, 2, 3, 4, 5, 20] numbers.append("hello") # 這個(gè)值可以為字符串 numbers.append([1,2,3]) # 也可以為另外一個(gè)列表 print(numbers) #[1, 2, 3, 4, 5, 20, 'hello', [1, 2, 3]] print("---------clear方法---------") # clear:用于清除列表的所有內(nèi)容 names = ["Bill", "Mary"] print(names) #['Bill', 'Mary'] names.clear() print(names) #[] print("----------copy方法----------") # copy:用于復(fù)制一個(gè)列表 a = [1,2,3,4,5] acopy = a acopy1 = a[:] #通過分片復(fù)制列表 acopy1 和 a 這2個(gè)列表的值是完全一樣的 但是是2個(gè)不同的序列 acopy2 = a.copy() a[3] = "hello" #這一步的目的是 要改變 3這個(gè)位置上的數(shù) print(acopy) #[1, 2, 3, 'hello', 5] print(acopy1) #[1, 2, 3, 4, 5] print(acopy2) #[1, 2, 3, 4, 5] # 分片的方式或者是copy的方式 就是一個(gè)副本 print("----------count方法-----------") # count:用于統(tǒng)計(jì)某個(gè)元素在列表中出現(xiàn)的次數(shù) search = ["he", "new", "he", [1,2,3],"he", "world", "peter",[1,2,3]] # 搜素“he”在search出現(xiàn)的次數(shù) print(search.count("he")) # 3 print(search.count([1,2,3])) # 2 print(search.count(20)) # 如果沒有找到指定的列表元素,返回0 print("------extend方法------") # extend:用于在列表結(jié)尾插入另一個(gè)列表,也就是讓兩個(gè)列表首尾相接。 a = [1,2,3] b = [4,5,6] a.extend(b) print(a) # [1, 2, 3, 4, 5, 6] a 這個(gè)列表改變了 a[2] =123 print(a) # [1, 2, 123, 4, 5, 6] a = [1,2,3] b = [4,5,6] x = a a = a + b x[2] = 543 print(a) # [1, 2, 3, 4, 5, 6] print(x) # [1, 2, 543] print("------index方法------") # index:用于從列表中找出某個(gè)值第一次出現(xiàn)的索引位置 numbers = [5,3,6,8] print(numbers.index(6)) # 2 6的位置上2 # print(numbers.index(10)) # 如果指定的值在列表中不存在,會(huì)拋出異常 print("-------insert方法-------") # insert:用于將值插入到列表中的指定位置 //這個(gè)方法可以取代append 因?yàn)榭梢栽诹斜碇械娜我馕恢貌迦? numbers = [1,2,3,4,5] #numbers.insert(3,"four") # [1, 2, 3, 'four', 4, 5] #print(numbers) # 使用分片賦值完成同樣的效果 numbers[3:3]="four" print(numbers) # [1, 2, 3, 'f', 'o', 'u', 'r', 4, 5] numbers[3:3] = ["four"] # 開始索引和結(jié)束索引相等 不代表任何的元數(shù) 只是光標(biāo)到達(dá)此位置 把這個(gè)位子代表4這個(gè)位子 print(numbers) # [1, 2, 3, 'four', 4, 5] print("-------pop方法-------") # pop:用于移除彈出列表中的元素(默認(rèn)是最后一個(gè)元素),并返回該元素的值 numbers = [1,2,3] print(numbers.pop()) # 默認(rèn)不指定的話 就彈出 最后一個(gè)元數(shù) 3 結(jié)果為3 print(numbers.pop(1)) # 彈出第索引位子為1的元素 1表示 要彈出位子的索引 結(jié)果為2 print(numbers) # 我們彈出了2次 就剩下一個(gè)1 了 結(jié)果為 [1] print("---------remove方法---------") # remove:用于移除列表中某個(gè)值的第一次匹配項(xiàng) words = ["he", "new", "he","yes"] words.remove("he") print(words) # 結(jié)果為 ['new', 'he', 'yes'] 只移除第一個(gè) 出現(xiàn)的第一個(gè) print("------reverse方法--------") # reverse:用于將列表中的元素反向存放 numbers = [1,2,3,4,5,6,7] numbers.reverse() # [7, 6, 5, 4, 3, 2, 1] 倒序 如果執(zhí)行2次 那么就又正面返回了 print(numbers) # 用分片的方法 第一個(gè)為開始索引 結(jié)束索引 步長(zhǎng) print(numbers[len(numbers)::-1]) # 結(jié)果為 [7, 6, 5, 4, 3, 2, 1] print("--------sort方法-------") # sort:用于對(duì)列表進(jìn)行排序,調(diào)用該方法會(huì)改變?cè)瓉淼牧斜? numbers = [4,3,1,7,4,83,2,-3] numbers.sort() print(numbers) # [-3, 1, 2, 3, 4, 4, 7, 83] 排序 是一種升序的排序 改變了原來的列表 # 要是不想改變?cè)瓉淼牧斜碓趺崔k? #方法1:使用分片或者copy的方法 將這個(gè)列表復(fù)制一份 然后在排序 numbers1 = [4,3,1,7,4,83,2,-3] numbers2 = numbers[:] # 分片復(fù)制方法 很簡(jiǎn)單 numbers2.sort() print(numbers1) # [4, 3, 1, 7, 4, 83, 2, -3] print(numbers2) # [-3, 1, 2, 3, 4, 4, 7, 83] numbers3 = numbers1.copy() # 用copy的方法 復(fù)制 print(numbers3) # [4, 3, 1, 7, 4, 83, 2, -3] #方法2 我們不使用sort這個(gè)函數(shù) 因?yàn)樗淖兞嗽瓉淼牧斜?nbsp;我們使用 sorted函數(shù) 這個(gè)函數(shù)是返回排好序的列表 sorted函數(shù) 不改變?cè)瓉砹斜淼捻樞? # 可以對(duì)任意的序列進(jìn)行排列 ,可以對(duì)字符串進(jìn)行排列 x = [5,4,7,2] y = sorted(x) print(x) # [5, 4, 7, 2] print(y) # [2, 4, 5, 7] # 對(duì)字符串進(jìn)行排序 print(sorted("www.baidu.com")) # ['.', '.', 'a', 'b', 'c', 'd', 'i', 'm', 'o', 'u', 'w', 'w', 'w'] # 利用askm值進(jìn)行排序 從低到高 # 我們可以通過關(guān)鍵字 讓他降序排列 x = [4,6,2,8,44,56,22] x.sort(reverse = True) # 關(guān)鍵字 reverse 為true 為降序 ;如果 為flase為升序 默認(rèn)為升序 # reverse:用于將列表中的元素反向存放 print(x) # [56, 44, 22, 8, 6, 4, 2] x.sort(reverse = False) print(x) # [2, 4, 6, 8, 22, 44, 56]
課程九 元組 元組屬于序列 元組和列表的操作基本上上一樣的,操作呢基本上是相同的,只有一點(diǎn)不一樣,元組是只讀的,元組是不可以修改的,列表中的所有修改操作,元組都不支持 # 元組 # 元組的定義是用 () 來定義的 a = () # 這里就是定義了一個(gè)空的元組 b = (1,2,3) c = 1,2,3,4,5 # 這樣的方式也是定義一個(gè)元組 基本上不用這個(gè) print(c) # (1, 2, 3, 4, 5) x = (30,) # 這里一定要加 , 要不然就會(huì)當(dāng)成一個(gè)值去處理了 print(x) # (30,) print((12) * 12) # 144 這里的12沒有加, 就會(huì)當(dāng)成一個(gè)值去處理 print((12,) * 12) # (12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12) 這里就是當(dāng)成了一個(gè)元組去操作的 aa = (1,2,4) aa = aa.index(2) print(aa) # 結(jié)果為 1 index:用于從列表中找出某個(gè)值第一次出現(xiàn)的索引位置 aa = (1,2,4,2,2) # aa = aa.index(2) aa = aa.count(2) print(aa) # 結(jié)果為3 count:用于統(tǒng)計(jì)某個(gè)元素在列表中出現(xiàn)的次數(shù) // 元組理論上只支持 index 和 count 方法 // 元組和列表基本相同 為什么要用元組呢?有2點(diǎn)原因 ''' 1. 元組可以在映射中作為鍵值使用,而列表是不能作為鍵值使用 // kv的形似的話,后面講到的字典的話,那么k(一組數(shù)和一組值作為k的話) 就必須要用 元組的 2. 很多內(nèi)建函數(shù)和方法的返回值就是元組,所以在使用這些函數(shù)和方法是必須使用元組 ''' 列表和元組的小結(jié): 1、序列包含 列表和元組 2、列表的表達(dá)方式為: names = ["Bill", "Mary", "Jack"] 3、元組的表達(dá)方式為: b = (1,2,3) 4、元組和列表的操作基本上上一樣的,操作呢基本上是相同的,只有一點(diǎn)不一樣,元組是只讀的,元組是不可以修改的,列表中的所有修改操作,元組都不支持 # 我們以前講過2種序列:1列表 2元組 # 共同點(diǎn):都是通過索引引用元素值 # 不同點(diǎn):列表是可讀寫的,元組是只讀的 names = ["Bill", "Mike", "John", "Mary"] numbers = ["1234", "4321", "6789", "6543"] print(numbers[names.index("Mike")]) #4321 print(names[numbers.index("6543")]) # Mary
感謝各位的閱讀!關(guān)于“python中如何操作使用列表”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,讓大家可以學(xué)到更多知識(shí),如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!
當(dāng)前文章:python中如何操作使用列表
分享鏈接:http://jinyejixie.com/article10/jjhcgo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供云服務(wù)器、App開發(fā)、網(wǎng)站設(shè)計(jì)、企業(yè)網(wǎng)站制作、面包屑導(dǎo)航、網(wǎng)頁設(shè)計(jì)公司
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)