Python 从csv中筛选当前年度
如何使用Python 从csv中筛选当前年度,python,csv,datetime,Python,Csv,Datetime,如何使用dateime将当前年份自动输入到我的筛选器中,并将从筛选器创建的文件也命名为当前年份 在上面写着“2015年”的地方,我正试图在今年做出改变。csv中的数据采用M/DD/YYYY格式 import csv import time from datetime import date reader = csv.reader(open(r"input.csv"),delimiter=',') filtered = filter(lambda p: '2015' == p[7], reade
dateime
将当前年份自动输入到我的筛选器中,并将从筛选器创建的文件也命名为当前年份
在上面写着“2015年”的地方,我正试图在今年做出改变。csv中的数据采用M/DD/YYYY格式
import csv
import time
from datetime import date
reader = csv.reader(open(r"input.csv"),delimiter=',')
filtered = filter(lambda p: '2015' == p[7], reader)
csv.writer(open(r'output\Year\2015.csv','w', newline =''),delimiter=',').writerows(filtered)
time.sleep(0.1)
您可以使用
date.today().year
:
import csv
import time
from datetime import date
year = str(date.today().year)
filename = r'output\Year\{}.csv'.format(year)
reader = csv.reader(open(r"input.csv"),delimiter=',')
filtered = filter(lambda p: year == p[7], reader)
csv.writer(open(filename, 'w', newline=''), delimiter=',').writerows(filtered)
time.sleep(0.1)
您可以使用
date.today().year
:
import csv
import time
from datetime import date
year = str(date.today().year)
filename = r'output\Year\{}.csv'.format(year)
reader = csv.reader(open(r"input.csv"),delimiter=',')
filtered = filter(lambda p: year == p[7], reader)
csv.writer(open(filename, 'w', newline=''), delimiter=',').writerows(filtered)
time.sleep(0.1)
使用后续
.year
属性和后续.year
属性在lambda
中关于year
的内容传递到过滤器
?我实际上完全错过了year
使用了两次,很好catch@malbarbo第7行中的日期为MM/DD/YYYY格式,不(lambda p:year==p[7],读取器)
是否需要更改以正确读取年份?它会生成包含年份但没有数据的文件。尽管如此,其他一切都正常工作了,非常感谢。获取p[7][4:][/code>lambda中year
的最后4个字符,传递给filter
?我实际上完全错过了year
使用了两次,很好catch@malbarbo第7行中的日期为MM/DD/YYYY格式,不(lambda p:year==p[7],reader)
需要更改才能正确读取年份?它会生成包含年份但没有数据的文件。不过,其他所有功能现在都正常工作,非常感谢。获取最后4个字符p[7][4:][/code>