适合初学者的python练习1

操作1:用基础知识,把下面一段话写到一个文件中,然后读取该文件,用split将其分解,然后写入字典或者列表,然后判断哪个城市大于平均数。
操作2:将分析结果数据写入一个csv文件中,文件包含城市名,病人数字段;同时新加一个字段,如果病人数>500就写严重;否则就写不严重。要求用函数。

文字:武汉市41152例、孝感市3279例、黄冈市2831例、荆州市1501例、鄂州市1274例、随州市1267例、襄阳市1155例、黄石市983例、荆门市915例、宜昌市895例、咸宁市861例、十堰市612例、仙桃市531例、天门市485例、恩施洲249例、潜江市182例、神农架林区10例。

代码如下:

#写入txt
f=open('demo.txt','w')
f.write('武汉市41152例、孝感市3279例、黄冈市2831例、荆州市1501例、鄂州市1274例、随州市1267例、襄阳市1155例、黄石市983例、荆门市915例、宜昌市895例、咸宁市861例、十堰市612例、仙桃市531例、天门市485例、恩施洲249例、潜江市182例、神农架林区10例。')
f.close()
#读取txt
f=open('demo.txt','r')
content=f.read()
f.close()
#进行分割等操作
content=content.replace('洲','市')
content=content.replace('区','市')
contentnew=content.split('、')
city=[None]*len(contentnew)
i=0
while i<len(contentnew):
    city[i]={}
    i=i+1
j=0
while j<len(contentnew):
    a=contentnew[j].split('市')
    b=a[1].split('例')
    city[j]['name']=a[0]
    city[j]['num']=b[0]
    j=j+1
n=0
nsum=0
while n<len(contentnew):
    nsum=nsum+int(city[n]['num'])
    n=n+1
naverage=nsum/len(contentnew)
t=0
while t<len(contentnew):
    if(int(city[t]['num'])>naverage):
        print(city[t]['name']+' ')
    t=t+1
 #写入csv
import csv
f=open('demo.csv','w',encoding="UTF8",newline='')
def writeCsv(citydic):
    t=0
    while t<len(citydic):
        if(int(citydic[t]['num'])>500):
            citydic[t]['extend']="严重"
        else:
            citydic[t]['extend']="较轻"
        t=t+1
    return citydic
city=writeCsv(city)
writer=csv.writer(f)
for i in city:
    writer.writerow(list(i.values()))
f.close()
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值