j_list = ['apple', 'mango', 'march', 'car', 'april', 'ocean']
在迭代上面的列表时,我需要找到列表元素是否是一个月。
calender
模块对您的问题很有用。
from calendar import month_name
months = {m.lower() for m in month_name[1:]} #list of months in lowercase
j_list = ['apple', 'mango', 'march', 'car', 'april', 'ocean']
for element in j_list:
print(f'{element} : {element in months}') # result of checking is printed in boolean type
结果如下:
apple : False
mango : False
march : True
car : False
april : True
ocean : False
不使用import
的解决方案:
创建一个包含月份名称的列表,并遍历j_list
,检查元素是否在第一个列表中。
month_names = ['january', 'february' ... 'december']
for el in j_list:
print(el, ':', el in month_names)
注意:它比import
更快,因为:import
本身可能需要时间;calendar.month_name
有一个空字符串(第一个元素(,所以它有点慢,对于像j_list
这样的巨大列表来说慢得多。