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.cnblogs.com/xxpythonxx/p/14593789.html
图文来源于网络,如有侵权请联系删除。