使用pi在Python中导出

2024-10-02 14:16:33 发布

您现在位置:Python中文网/ 问答频道 /正文

代码是:

import pickle
import random

guessesTaken = 0

print('Hello! What is your name?')
name = raw_input()

number = random.randint(1, 20)
print('Well, ' + name + ', I am thinking of a number between 1 and 20.')

while guessesTaken < 6:
    print('Take a guess.') # There are four spaces in front of print.
    guess = raw_input()
    guess = int(guess)

    guessesTaken = guessesTaken + 1

    if guess < number:
        print('Your guess is too low.') # There are eight spaces in front of print.

    if guess > number:
        print('Your guess is too high.')

    if guess == number:
        break

if guess == number:
    guessesTaken = str(guessesTaken)
    print('Good job, ' + name + '! You guessed my number in ' + guessesTaken + ' guesses!')

if guess != number:
    number = str(number)
    print('Nope. The number I was thinking of was ' + number)
clasament= 'clasament.data'
f=open(clasament, 'wb')
pickle.dump(name, f)

我想做一个顶层的例子:
姓名猜测 姓名猜测 ……
我只能让名字出现,如果你再玩这个游戏,名字就会刷新。在


我明白了错误。回溯(最近一次呼叫):File“/home/catalin/猜数.py“,第44行,输入名称,猜测输入dct.项目():AttributeError:“str”对象没有属性“items”


Tags: ofnameinimportnumberrawifis
1条回答
网友
1楼 · 发布于 2024-10-02 14:16:33

看来你想保持高(低)分。这似乎是一个字典的工作,pickle(或json)可以很好地处理。在

try:
    with open('clasament.data') as f:
       dct = pickle.load(f)
except IOError:  #file doesn't exist, no high-scores registered.
    dct = {}

if dct:
    print "Low scores so far!"

    #you may want `sorted(dct.items()) to have a nice order...
    for name,guesses in dct.items(): 
        print(name,guesses)

#<snip>
#play game here
#</snip>

#keep low scores :-)
if name in dict and dct[name] > guessesTaken:
    dct[name] = guessesTaken

with open('clasament.data','w') as f:
    dct = pickle.dump(dct,f)

相关问题 更多 >

    热门问题