1:串列的去重操作
al = [1, 1, 2, 3, 1, 2, 4]
#set方法元素去重
al_set = set(al)
print(list(al_set)) #集合不支持索引操作,可以先將之轉換為串列
#formkeys方法
al2 = {}.fromkeys(al).keys()
print(list(al2)) #同集合,也是先將之轉換成串列
#串列推導式
al3 = []
for a in al:
if a not in al3:
al3.append(a)
print(al3)
輸出結果均為:[1, 2, 3, 4]
2:把字串中,除間隔符以外的所有字符轉換為一個串列
加入有個字串s = "1, 2, 3",怎么將他轉換成串列['1','2','3']?<br>這里我們不能直接用list函式,那樣會把中間的','間隔符也加入到串列里,這里可以用上篇文章提到過的split函式,只需要把分隔符指定為','就可以了,如下,就可以輸出我們想要的結果了<br><br>s = "1, 2, 3"
print(s.split(','))
3:找出兩個陣列中相同和不同元素
#Python學習交流群:531509025
A = [1, 2, 3, 4, 5]
B = [1, 3, 5, 7, 9, 10]
#找出兩list中的相同元素
a = [x for x in A if x in B]
print(a)
#找出兩list中的不同元素
b = [y for y in (A+B) if y not in a]
print(b)
#在A中不在B中的元素
c = [m for m in A if m not in B]
print(c)
#在B中不在A中的元素
d = [n for n in B if n not in A]
print(d)
依次輸出的結果為:
[1, 3, 5]
[2, 4, 7, 9, 10]
[2, 4]
[7, 9, 10]
4:一行輸出串列
#一行輸出串列
l = ['a', 'b', 'c', 'd', 'e'] #元素是字符型別
print(''.join(l))
m = [1, 2, 3, 4, 5, 6, 7, 8, 9] #元素不是字符型別
print(''.join(map(str, m))) #map函式,根據提供的函式對制定的序列做映射
n = [[1, 2], [3, [4,5,6]], [5, 6]]#元素是串列型別
print([y for x in n for y in x])
輸出結果依次為:
abcde
123456789
[1, 2, 3, [4, 5, 6], 5, 6]
5:串列合并
串列可以像字串那樣直接用‘+’連接,也可以用extend方法將一個串列中的元素全部添加到另一個串列中,只不過前者是生成一個新的串列,后者是更新一個串列
#合并串列
a = [1, 5, 7, 9]
b = [2, 2, 6, 8]
print(a+b)
a.extend(b)
print(a)
輸出結果均為:[1, 5, 7, 9, 2, 2, 6, 8]
6:打亂串列元素
我么可以用random中的shuffle方法對一個串列里面的元素進行打亂,操作如下
#打亂串列元素
from random import shuffle
a = ['a', 1, 'b',5, 6, 9, 78]
shuffle(a)
print(a)
每次運行輸出的順序不同,
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/270625.html
標籤:Python
