描述
文件weather.in(csv格式,utf-8编码)存放了一段时间的天气数据,请筛选出其中天气为阴,且最低温大于等于1℃的数据,将其csv格式,utf-8编码存储至weather.out文件。 注意:测试用例中数据条数和样例可能不同。
格式
输入,weather.in文件
日期,天气状况,最高温,最低温,风力风向
2011年1月1日,小雨,6℃, 1℃,北风 ≤3级
2011年1月2日,阵雨,5℃, 1℃,北风 ≤3级
2011年1月3日,阴,5℃, 0℃,旋转风 微风
2011年1月4日,阴,5℃, 1℃,旋转风 微风
2011年1月5日,阴,4℃, 1℃,北风 ≤3级
2011年1月6日,阴,6℃, 2℃,无持续风向 ≤3级
2011年1月7日,阴,7℃, 0℃,北风 ≤3级
2011年1月8日,多云,7℃, 1℃,无持续风向 ≤3级
2011年1月9日,阴,6℃, 1℃,北风 ≤3级
2011年1月10日,阴,5℃, 2℃,东北风 ≤3级
2011年1月11日,多云,7℃, 1℃,无持续风向 ≤3级
2011年1月12日,多云,7℃, 1℃,无持续风向 ≤3级
2011年1月13日,多云,7℃, 0℃,无持续风向 ≤3级
2011年1月14日,多云,7℃, 2℃,无持续风向 ≤3级
2011年1月15日,多云,4℃, 0℃,旋转风 微风
2011年1月16日,小雨,5℃, 1℃,无持续风向 ≤3级
2011年1月17日,雨夹雪,3℃, 0℃,北风 ≤3级
2011年1月18日,阴,3℃, 0℃,北风 ≤3级
2011年1月19日,阴,3℃, 0℃,东北风 ≤3级
2011年1月20日,阴,5℃, 0℃,无持续风向 ≤3级
2011年1月21日,多云,6℃, 0℃,无持续风向 ≤3级
2011年1月22日,阴,6℃, 2℃,北风 ≤3级
2011年1月23日,阴,5℃, 0℃,无持续风向 ≤3级
2011年1月24日,多云,7℃, 1℃,北风 ≤3级
2011年1月25日,阵雨,6℃, 1℃,无持续风向 ≤3级
2011年1月26日,小雨,5℃, 2℃,北风 ≤3级
2011年1月27日,雨夹雪,4℃, 1℃,北风 微风
2011年1月28日,多云,6℃, 0℃,东北风 微风
2011年1月29日,阴,7℃, 2℃,无持续风向 ≤3级
2011年1月30日,阴,7℃, 2℃,无持续风向 ≤3级
2011年1月31日,阴,7℃, 2℃,旋转风 微风
输出,weather.out文件
日期,天气状况,最高温,最低温,风力风向
2011年1月4日,阴,5℃, 1℃,旋转风 微风
2011年1月5日,阴,4℃, 1℃,北风 ≤3级
2011年1月6日,阴,6℃, 2℃,无持续风向 ≤3级
2011年1月9日,阴,6℃, 1℃,北风 ≤3级
2011年1月10日,阴,5℃, 2℃,东北风 ≤3级
2011年1月22日,阴,6℃, 2℃,北风 ≤3级
2011年1月29日,阴,7℃, 2℃,无持续风向 ≤3级
2011年1月30日,阴,7℃, 2℃,无持续风向 ≤3级
2011年1月31日,阴,7℃, 2℃,旋转风 微风
import csv
if __name__ == '__main__':
with open('weather.in', 'r', encoding='utf-8') as f:
d = f.read()
with open('weather.csv', 'w', encoding='utf-8') as f:
f.write(d)
tasks = []
with open('weather.csv', 'r', encoding='utf-8') as f:
all_d = csv.reader(f)
head = next(all_d)
for i in all_d:
if i[1] == '阴' and int(str(i[3]).strip('℃')) >= 1:
tasks.append(i)
with open('weather.out', 'w', encoding='utf-8') as f:
f.write(','.join(head) + '\n')
for j in tasks:
lis = ','.join(j)
f.write(lis + '\n')