2017-04-25 58 views
-3

該方案應該使玩家數量增加75%,並有25%的機率減少1。如果新玩家獲得比最後玩家更高的分數,請將玩家名稱和分數保存到文件中。一旦玩家失去5分,該節目將退出。如何將我的python文件轉換爲int?

import random 

points = 1 
play = "yes" 
name = input("what is your name?") 
counter = 0 
while play.lower() == "yes": 
    risk = random.randint(0,3) 
    play = input(name.upper() + "!...want to risk it to bisk it?") 
    if risk == 0: 
     points -= 1 
     counter += 1 
     if counter == 5: 
      break 
    else: 
     points *= 2 
    fi = open("score.txt", "r") 
    score = fi.readlines() 
    fi.close() 
    scores = int(score[0]) 
    if (scores > points): 
     fi = open("score.txt","w") 
     fi.write(points + ":" + name) 
     fi.close() 
    print(score) 

在底部是文本文件「score.txt」,它有以下幾點:

0:No Name 

回答

0

你的意思是讀取數據回作爲一個可用的詮釋?

with open('score.txt') as F: 
    scores = F.readlines() 
    scores = [s.strip().split(':') for s in scores] 

現在如果你想通過分數數據循環:

for score, name in scores: 
    print(f"{name} scored:\t {int(score)}")