第一题
import csv ,os
reader=csv.DictReader(open('北京高档酒店价格分析.csv','r',encoding='utf-8'))
result=list(reader)
region=[]for x in result:if x['地区']notin region:
region.append(x['地区'])for x in region:withopen(rf'.\高档酒店地区分布\{x}.csv','w',encoding='utf-8',newline='')as writer:
writer=csv.DictWriter(writer,list(result[0].keys()))
writer.writeheader()for i in result:if i['地区']==x:
writer.writerow(i)
defget_birth(file_path):
reader=csv.DictReader(open(file_path,'r',encoding='utf-8'))
result=list(reader)for x in result:
a=x['birthday']
birthday=f'{a}-{randint(1,28)}'
birth=datetime.strptime(birthday,'%Y-%m-%d')
x['birthday']= birth
return result
defave_age(result):
time_today = datetime.today()sum=0for x in result:
age=time_today.year-x['birthday'].year
sum+=age
ave=sum/len(result)return ave
defleo(result):withopen('狮子座.csv','w', encoding='utf-8', newline='')as leof:
writer = csv.DictWriter(leof,list(result[0].keys()))
writer.writeheader()for x in result:
month = x['birthday'].month
day = x['birthday'].day
if(month==7and day>=23)or(month==8and day<=22):
writer.writerow(x)return
a=get_birth('2018年北京积分落户数据.csv')print(ave_age(a))
leo(a)
第一题import csv ,osreader=csv.DictReader(open('北京高档酒店价格分析.csv','r',encoding='utf-8'))result=list(reader)region=[]for x in result: if x['地区'] not in region: region.append(x['地区'])for x in region: with open(rf'.\高档酒店地区分布\{x}.csv','w',enc