我刚刚开始通过Invent Your Own Computer Games with Python工作。这是第 3 章的示例代码:
1 # This is a Guess the Number game.
2 import random
3
4 guessesTaken = 0
5
6 print('Hello! What is your name?')
7 myName = input()
8
9 number = random.randint(1, 20)
10 print('Well, ' + myName + ', I am thinking of a number between 1 and 20.')
11
12 for guessesTaken in range(6):
13 print('Take a guess.') # Four spaces in front of "print"
14 guess = input()
15 guess = int(guess)
16
17 if guess < number:
18 print('Your guess is too low.') # Eight spaces in front of "print"
19
20 if guess > number:
21 print('Your guess is too high.')
22
23 if guess == number:
24 break
25
26 if guess == number:
27 guessesTaken = str(guessesTaken + 1)
28 print('Good job, ' + myName + '! You guessed my number in ' + guessesTaken + ' guesses!')
29
30 if guess != number:
31 number = str(number)
32 print('Nope. The number I was thinking of was ' + number + '.')
guessesTaken当变量显然可以在 Python 中随时声明时,为什么要在开始时声明?
我已经尝试过完全不使用该行,也已更改guessesTaken为 0 以外的数字。在这两种情况下,它的工作方式似乎完全相同,因为range函数似乎可以管理guessesTaken.
书中指出:
第 4 行创建了一个名为 的新变量
guessesTaken:4. guessesTaken = 0您将在此变量中存储玩家所做的猜测次数。由于此时玩家在程序中没有做出任何猜测,所以将整数存储在
0这里。
这并不能证明这条线对我的存在是合理的。