好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > Python實現列表拼接和去重的三種方式

Python實現列表拼接和去重的三種方式

熱門標簽:電銷機器人錄音要學習什么 企業彩鈴地圖標注 煙臺電話外呼營銷系統 如何地圖標注公司 上海正規的外呼系統最新報價 預覽式外呼系統 外賣地址有什么地圖標注 銀川電話機器人電話 長春極信防封電銷卡批發

列表拼接三種方式

列表拼接主要有以下三種方式:

  • 最簡單的使用“+”;
  • 使用切片賦值的方法;
  • 使用列表自帶的extend方法

方式一:簡簡單單的“+”

>>> list1 = [1,2,3]
>>> list2 = [4,5,6]
>>> id(list1)
4408465160
>>> id(list2)
4408325512
>>> list1 = list1 + list2
>>> list1
[1, 2, 3, 4, 5, 6]
>>> id(list1)
4408504776

此方法易于理解,但你會發現其實list1已經不是原來那個list1了,list1的id值已經發生改變。

方法二:切片賦值

在這里,我們發現使用切片賦值的拼接就地執行,即它會修改原來的列表,但易讀性不高

>>> list1 = [1,2,3]
>>> list2 = [4,5,6]
>>> id(list1)
4408465160
>>> id(list2)
4408504776
>>> list1[len(list1):len(list1)] = list2
>>> list1
[1, 2, 3, 4, 5, 6]
>>> id(list1)
4408465160

方式三:列表自帶的extend()

>>> list1 = [1,2,3]
>>> list2 = [4,5,6]
>>> id(list1)
4408325512
>>> list1.extend(list2)
>>> list1
[1, 2, 3, 4, 5, 6]
>>> id(list1)
4408325512

這里,你會發現列表自帶的extend()也是就地執行,即它會修改原來的列表,直接在原來的列表后面拼接新列表。
綜合上面三種方式,第一種的使用“+”拼接需要易于理解,但卻不是就地執行,而是新開辟一塊空間來存放新列表;第二種比較難于理解;還是Python列表自帶的extend()拼接列表函數較為友好。

列表去重的三種方式

例如有以下一個列表:需要你進行去重,你能想到哪些方法呢?

num_list = [1,8,9,1,2,3,4,6,5,7,10,5,6,8,3,4]

利用集合set的特性

第一種方法(大家第一個都會想到的吧):利用集合set的特性

集合set特性:元素不能重復

>>> num_list = [1,8,9,1,2,3,4,6,5,7,10,5,6,8,3,4]
>>> new_list = list(set(num_list))
>>> new_list
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

利用字典key的不可重復屬性

第二張方法(與集合擁有相同特性的):那么就是字典的鍵啦
先介紹一下函數dict.fromkeys(序列,設置鍵對應的值),返回一個由序列的元素作為鍵,設置的值作為所有鍵的值的字典,值省略的話所有鍵的值將默認為None;如果設置了值的話所有的鍵將會賦予同一個值,看例子:

>>> dict1 = dict.fromkeys([1,2,3,4])
>>> dict1
{1: None, 2: None, 3: None, 4: None}
>>> dict1 = dict.fromkeys([1,2,3,4],5)
>>> dict1
{1: 5, 2: 5, 3: 5, 4: 5}

那么正式使用字典鍵的特性進行去重,看例子:

>>> num_list = [1,8,9,1,2,3,4,6,5,7,10,5,6,8,3,4]
>>> num_dict = dict.fromkeys(num_list)
>>> num_dict
{1: None, 8: None, 9: None, 2: None, 3: None, 4: None, 6: None, 5: None, 7: None, 10: None}
>>> new_list = list(num_dict.keys())
>>> new_list
[1, 8, 9, 2, 3, 4, 6, 5, 7, 10]

利用index()獲取到的是第一次出現的索引

第三種方式:利用index()獲取到的是第一次出現的索引
通過判斷列表中值第一次出現的索引值與遍歷的計數器的游標cursor值是否相等,相等的話則是第一次出現,否則是重復出現??蠢樱?br />

>>> num_list = [1,8,9,1,2,3,4,6,5,7,10,5,6,8,3,4]
>>> new_list = []
>>> cursor=0
>>> while cursor  len(num_list):
...     if num_list.index(num_list[cursor]) == cursor:
...           new_list.append(num_list[cursor])
...     cursor += 1
...
>>> new_list
[1, 8, 9, 2, 3, 4, 6, 5, 7, 10]

到此這篇關于Python實現列表拼接和去重的三種方式的文章就介紹到這了,更多相關Python列表拼接和去重內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • python列表與列表算法詳解
  • python列表的特點分析
  • python3操作redis實現List列表實例
  • Python內置數據結構列表與元組示例詳解
  • python列表與列表算法詳解(2)

標簽:盤錦 佳木斯 湖北 西寧 宜昌 珠海 上饒 潮州

巨人網絡通訊聲明:本文標題《Python實現列表拼接和去重的三種方式》,本文關鍵詞  Python,實現,列表,拼,接和,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Python實現列表拼接和去重的三種方式》相關的同類信息!
  • 本頁收集關于Python實現列表拼接和去重的三種方式的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 美美哒免费高清影视观看| 亚洲精品无码久久久久苍井空国产一| 色综合狠狠| 公交车忘穿内裤被挺进小说网站| 华人被黑人有粗大猛然进| 啊??轻点?奶头H的故事| 曰曰摸天天摸人人看久久久 | 色综合久久88色综合天天提莫| 亚洲人色大成年网站在线观看| 双性室友的粗大H拔不出来| 亲胸揉胸膜下刺激视频风险评估| 婷婷久久久五月综合色| 亚洲国产精品福利一区二区三区| 一受多攻高h| 佐山爱一区二区三区四区| 边吻边摸下面好爽视频完整版| 男人做一次爱能舒服多久| 中文字日产乱幕六区| 日本草草视频在线观看| 强壮公次次弄得我高潮A片视频| 女生喊疼男生越往里寨app| a一级网站| 人妻无码精品久久久久| 麻豆精品一区二区三区免费| 火辣辣小说阅读| 一边顶弄一边接吻| 人妻女教师~婬辱の教室动漫MP4| 性视频一区| 姐姐的朋友5在观有限中字| 男人j放到女人j内部免费网站| 中班宝贝对父母说的话| 啪啪日常np高h| 日本二本道欧美二区一区 | 国产丁香婷婷妞妞基地| 欧美Av日韩Av综合在线第一页 | 意大利r级理片在线观看| 吴玉霞的肥臀肉汁小说| 狠狠色噜噜狠狠狠狠米奇7777| 阿德大战陈艳陈玉莹| 黄频免费影院| 亚洲一区二区在线成人|