集合操作
[dict(row) for row in rows]
b = [1, 2, 3, 4, 5, 6]
a = [1, 2, 3, 4, 5, 7]
c = []
# 交集
print(list(set(a).intersection(set(b))))
# 并集
print(list(set(a).union(set(b))))
# 差集 # b中有而a中没有的
print(list(set(b).difference(set(c))))
字典操作
两个字典 相交、合并、相差
a = {
'x' : 1,
'y' : 2,
'z' : 3
}
b = {
'w' : 10,
'x' : 11,
'y' : 2
}
# 公共Key部分
a.keys() & b.keys() # { 'x', 'y' }
# A独有的部分
a.keys() - b.keys() # { 'z' }
# A、B公共的Key-Value
a.items() & b.items() # { ('y', 2) }
Python 映射
Python 内置函数 map();
map() 内置函数将给定函数应用于可迭代的每一项,并返回一个迭代器对象。
map(function, iterable, ...)
可以将多个迭代传递给map()函数。该函数必须采用与可迭代项一样多的参数。
def square(x):
return x * x
nums = [1, 2, 3, 4, 5]
nums_squared = map(square, nums)
for num in nums_squared:
print(num)
# 打印结果:
# 1 4 9 16 25
- 具有多个可迭代项的 Python 映射
def multiply(x, y):
return x * y
nums1 = [1, 2, 3, 4, 5]
nums2 = [6, 7, 8, 9, 10]
mult = map(multiply, nums1, nums2)
for num in mult:
print(num)
- Python 映射多个函数
#!/usr/bin/python3
def add(x):
return x + x
def square(x):
return x * x
nums = [1, 2, 3, 4, 5]
for i in nums:
vals = list(map(lambda x: x(i), (add, square)))
print(vals)
# 结果:
[2, 1]
[4, 4]
[6, 9]
[8, 16]
[10, 25]