A. python 列表多個元素如何配對去重呢
每次從列表中取出兩個元素,如果第二個元素不在輸出列表,就將這兩個元素添加到輸出列表。
source = ["a","1","b","1","c","2","d","3","e","4","c","3"]
out = []
for e in zip(source[0::2],source[1::2]):
....if e[1] not in out:
........out = out + list(e)
print(out)
B. Python學習小技巧之列表項的排序
Python學習小技巧之列表項的排序
本文介紹的是關於Python列表項排序的相關內容,分享出來供大家參考學習,下面來看看詳細的介紹:
典型代碼1:
data_list = [6, 9, 1, 3, 0, 10, 100, -100]
data_list.sort()
print(data_list)
輸出1:
[-100, 0, 1, 3, 6, 9, 10, 100]
典型代碼2:
data_list = [6, 9, 1, 3, 0, 10, 100, -100]
data_list_ = sorted(data_list)
print(data_list)
print(data_list_)
輸出2:
[6, 9, 1, 3, 0, 10, 100, -100]
[-100, 0, 1, 3, 6, 9, 10, 100]
應用場景
需要對列表中的項進行排序時使用。其中典型代碼1是使用的列表自身的一個排序方法sort,這個方法自動按照升序排序,並且是原地排序,被排序的列表本身會被修改;典型代碼2是調用的內置函數sort,會產生一個新的經過排序後的列表對象,原列表不受影響。這兩種方式接受的參數幾乎是一樣的,他們都接受一個key參數,這個參數用來指定用對象的哪一部分為排序的依據:
data_list = [(0, 100), (77, 34), (55, 97)]
data_list.sort(key=lambda x: x[1]) # 我們想要基於列表項的第二個數進行排序
print(data_list)
>>> [(77, 34), (55, 97), (0, 100)]
另外一個經常使用的參數是reverse,用來指定是否按照倒序排序,默認為False:
data_list = [(0, 100), (77, 34), (55, 97)]
data_list.sort(key=lambda x: x[1], reverse=True) # 我們想要基於列表項的第二個數進行排序,並倒序
print(data_list)
>>> [(0, 100), (55, 97), (77, 34)]
帶來的好處
1. 內置的排序方法,執行效率高,表達能力強,使代碼更加緊湊,已讀
2. 靈活的參數,用於指定排序的基準,比在類似於Java的語言中需要寫一個comparator要方便很多
其它說明
1. sorted內置函數比列表的sort方法要適用范圍更廣泛,它可以對除列表之外的可迭代數據結構進行排序;
2. list內置的sort方法,屬於原地排序,理論上能夠節省內存的消耗;
總結
好了,以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作能帶來一定的幫助
C. Python數字列表去重,如何簡單的既去重還能按原來的順序輸出
Python數字列表去重,還能按原來的順序輸出.
第一種方法
alist = [1, 2, 2, 4, 4, 6, 7]
b = []
for i in alist:
if i not in b:
b.append(i)
print(b)
源代碼(注意源代碼的縮進)
D. python中列表如何去重
可以利用set去重
代碼如下:
#coding=utf-8
li=[1,2,3,4,2,1,3,0]#列表
li2=set(li)
print(li2)
E. python 列表去重(數組)的幾種方法
function
clear(arr)
{//
1
如何獲取數組中每一個元素出現的次數var
o
=
{};
//
1.1
記錄數組中元素出現的次數for
(var
i
=
0;
i
<
arr.length;
i++)
{var
item
=
arr[i];
//
數組中的每一個元素//
o[item]
=
1;//
1.2
判斷o對象是否有當前遍歷到的屬性if
(o[item])
{//
如果o[item]
存在,說明次數不為1o[item]++;}
else
{//
如果o[item]
不存在,說明是第一次出現o[item]
=
1;}}//
console.log(o);
//
2
生成一個新的數組,存儲不重復的元素var
newArray
=
[];//
2.1
遍歷對象o中的所有屬性for
(var
key
in
o)
{//
2.2
判斷o對象中當前屬性的值是否為
1
如果為1
說明不重復直接放到新數組中if
(o[key]
===
1)
{newArray.push(key);}
else
{//
o對象中當前屬性
次數不為1
,說明有重復的,如果有重復的話,只存儲一次//
判斷當前的newArray數組中是否已經有該元素
if
(newArray.indexOf(key)
===
-1)
{newArray.push(key);}}}return
newArray;}
var
array
=
['c',
'a',
'z',
'a',
'x',
'a'];var
newArray
=
clear(array);console.log(newArray);
F. python中如何刪除列表中重復的元素
舉個例子,比如有這樣一個列表l,可表示為[1,2,2,5,3,6],它可以通過下面的操作達到去重的目的:l=list(set(l)),在python shell中代碼執行如下圖所示:
python列表去重操作代碼運行結果
G. python列表怎麼去掉相同的數
利用set()函數,可以將列表去重,如:
s = [1, 3, 3, 5, 7, 7, 8, 9]
set(s) #輸出為{1, 3, 5, 7, 8, 9}
list(set(s)) #輸出 [1, 3, 5, 7, 8, 9]
H. python中刪除列表中的重復內容
題主你好,
可以通過"集合"過渡一下, 來實現列表的去重, 即整個過程是:
原始列表-->集合-->再轉回列表
分解來看:
=====
希望可以幫到題主, 歡迎追問.