日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【原创】从 列表的重复 到 用sum展开二层嵌套列表将子元素合并

發布時間:2023/12/20 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【原创】从 列表的重复 到 用sum展开二层嵌套列表将子元素合并 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
轉載請注明出處:https://www.cnblogs.com/oceanicstar/p/9517159.html
★像R語言里頭有rep函數可以讓向量的值重復,在python里面可以直接對列表用乘法讓列表進行重復 注:這里生成的重復列表是個新列表(我們可以打印id查看一下) a = [1,2] b = a * 3 a Out[1]: [1, 2] b Out[2]: [1, 2, 1, 2, 1, 2] id(a) Out[3]: 303757832 id(b) Out[4]: 303741000

?

★將嵌套列表中的 子元素 合并,可以用sum函數,第二個參數傳入一個空列表[]即可 注意:sum函數的參數包括兩個(iterable可迭代對象,start求和的初始值),sum會把可迭代對象內的元素加在start參數傳入的初始值上。 因此,如果初始值是個列表,那么可迭代對象也必須要是個列表,且必須是嵌套列表,因為只有這個列表元素也是列表時,這些元素才能跟初始值列表相加。 我們來列舉幾個例子 # 實際在計算:[] + [1,2] + [3,4] sum([[1,2], [3,4]], []) Out[13]: [1, 2, 3, 4]# 實際在計算:[5] + [1,2] + [3,4] sum([[1,2], [3,4]], [5]) Out[14]: [5, 1, 2, 3, 4]# 實際在計算:[5,6] + [1,2] + [3,4] sum([[1,2], [3,4]], [5,6]) Out[15]: [5, 6, 1, 2, 3, 4]# 實際在計算:[[5]] + [1,2] + [3,4] sum([[1,2], [3,4]], [[5]]) Out[16]: [[5], 1, 2, 3, 4]# 實際在計算:[[5,6]] + [1,2] + [3,4] sum([[1,2], [3,4]], [[5,6]]) Out[17]: [[5, 6], 1, 2, 3, 4]

?

我們會發現,這里sum函數都是在傳入的第二個參數列表基礎上,再合并了第一個參數——嵌套列表的所有子元素 ★例子:如何讓一個列表c = [1,2,3,4]中的每個元素重復指定次數(各元素重復次數按列表d=[4,1,3,2]來重復),生成一個新列表? sum([[c[i]]*d[i] for i in range(len(c))], []) Out[31]: [1, 1, 1, 1, 2, 3, 3, 3, 4, 4]# 更簡單的(利用zip進行對應位置的元素匹配,免去了使用索引) sum([[x] * y for x,y in zip(c, d)], []) Out[43]: [1, 1, 1, 1, 2, 3, 3, 3, 4, 4]

?

利用的就是上面提到的: 1. 列表數據類型可以直接使用乘法來指定次數進行重復 2. sum(嵌套列表,[])可以展開二層嵌套列表并合并嵌套列表中的各子列表元素 注意:sum只能展開第一個參數中嵌套列表的最外頭2層(實際上原理已經在上面提到了,就是展開列表里面的元素加在初始值上),例如下面這個例子 # 實際在計算:[0] + [[1,2], [3,4]] + [5,6] sum([[[1,2],[3,4]],[5,6]], [0]) Out[34]: [0, [1, 2], [3, 4], 5, 6]

?

?

轉載請注明出處:https://www.cnblogs.com/oceanicstar/p/9517159.html

轉載于:https://www.cnblogs.com/oceanicstar/p/9517159.html

總結

以上是生活随笔為你收集整理的【原创】从 列表的重复 到 用sum展开二层嵌套列表将子元素合并的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。