from math import floor
defdifference_by(a,b,fn):
b =set(map(fn, b))return[i for i in a if fn(i)notin b]print(difference_by([2.1,1.2],[2.3,3.4], floor))
2.一行代码调用多个函数
defadd(a, b):return a + b
defsubtract(a ,b):return a - b
a, b =4,5print((subtract if a>b else add)(a, b))
3.检查列表是否有重复项:有重复项就返回True,无重复项就返回
defhas_duplicate(lst):returnlen(lst)!=len(set(lst))
x =['公共开发','实验室','python']
y =['公共开发','实验室','python','python']
4.合并两个字典
defmerge_dictionaries(a, b):return{**a,**b}
a ={'x':1,'y':2}
b ={'y':3,'z':4}print(merge_dictionaries(a, b))
import time
start_time = time.time()
a =2023
b =2022
c = a - b
print(c)
end_time = time.time()
total_time = end_time - start_time
print('Time:', total_time)
from re import sub
defpalindrome(string):
s = sub('[\W_]','', string.lower())# 中括号内\W_表示用于匹配\W或者_print(s)return s == s[::-1]print(palindrome('ta co cat'))
13.字典默认值:通过 Key 取对应的 Value 值,可以通过以下方式设置默认值。如果 get() 方法没有设置默认值,那么如果遇到不存在的 Key,则会返回 None。