- 帖子
- 1
- 精华
- 0
- 积分
- 8
- 阅读权限
- 10
- 注册时间
- 2016-8-5
- 最后登录
- 2016-8-7
|
39.40.41断断续续看了一个星期,终于看完了,虽然不是很熟,但代码总算是都能看懂了,按照课程抄下来运行出一些小问题也都能找到问题出在哪里并且自己解决。- from random import randint
- name=raw_input('请输入姓名:')
- f=file('text1.txt')
- lines=f.readlines()
- f.close()
- scores={}
- for l in lines:
- s=l.split()
- scores[s[0]]=s[1:] #s[0]是姓名,在score中是KEY,为键赋值.
- score=scores.get(name) #socre等于在字典scores查找的键
- if score is None:
- score=[0, 0, 0] #给不存在的用户赋值创建一个新的字典项
-
- game_times=int(score[0])
- min_times=int(score[1])
- total_times=int(score[2])
- if game_times>0:
- avg_times=float(total_times)/game_times
- else:
- avg_times=0
- print'%s,你已经玩了%d次,最少%d轮猜出答案,平均%.2f轮猜出答案'%(name,game_times,min_times,\
- avg_times)
- num=randint(1,100)
- times=0
- print'Guess what i think?'
- bingo=False
- while bingo==False:
- times+=1
- answer = input()
- if num<answer:
- print'too big'
- if num>answer:
- print'too small'
- if num==answer:
- print'bingo'
- bingo=True
- if game_times==0 or times<min_times:
- min_times=times
- total_times+=times
- game_times+=1
- scores[name]=[str(game_times),str(min_times),str(total_times)]
- result=''
- for n in scores: #遍历键
- line=n+' '+' '.join(scores[n])+'\n' #姓名+空格+合并字典值为一个字符串要加空格+换行
- result+=line #把成绩作为一个字符串赋值给result
- f=file('text1.txt','w')
- f.write(result)
- f.close()
复制代码 |
|