传递值以结束游戏消息
Passing a value to end message of game
我有这个 hang man 代码,但我想添加传递给它的参数
import time
import random
#Procedure
def Username():
name = raw_input("What is your name?")
print "Hello, "+ name, "Time to play hangman!"
print "\n"
def loading():
#Makes the user wait for 1 second
time.sleep(1)
print "Start guessing..."
time.sleep(0.5)
return
def randwords():
global words
words = ["keyboard", "motherboard", "python", "powersupply"]
words = random.choice(words)
#Main Program
Username()
loading()
randwords()
guesses =""
turns = 12
#while loop
while turns > 0:
failed = 0
for char in words:
if char in guesses:
print char,
else:
print"_",
failed += 1
if failed == 0:
print "\nyou won Well Done"
break
print
guess = raw_input("guess a character:")
guesses += guess
if guess not in words:
turns -= 1
print "wrong\n"
print "you have", + turns, "more guesses"
if turns == 0:
print "you lose GAME OVER\n"
input()
Username()
waiting()
Random
我希望它采用名称值,用户在开始时输入,然后将该值传递到结束消息中。
示例
print "you have won (NAME) Well Done"
或
print "you lose (NAME) GAME OVER"
请有人帮助我,因为我每次尝试都会收到错误消息时可以解决问题。
您应该将 'name' 声明为全局变量。
name = '' # before def Username
在为该变量赋值之前,请执行以下操作:
global name
name = raw_input("What is your name?")
然后您可以在脚本中的任何地方使用这个变量来打印它的值。
print name, "you lose GAME OVER\n"
P.S :要写入全局变量,必须在前面加上:
global <variable-name>
然而,您可以通过正常方式读取其值
您可以简单地 return 函数 'Username()' 中的名称。
def Username():
...
return name
def main():
...
name = Username()
...
我有这个 hang man 代码,但我想添加传递给它的参数
import time
import random
#Procedure
def Username():
name = raw_input("What is your name?")
print "Hello, "+ name, "Time to play hangman!"
print "\n"
def loading():
#Makes the user wait for 1 second
time.sleep(1)
print "Start guessing..."
time.sleep(0.5)
return
def randwords():
global words
words = ["keyboard", "motherboard", "python", "powersupply"]
words = random.choice(words)
#Main Program
Username()
loading()
randwords()
guesses =""
turns = 12
#while loop
while turns > 0:
failed = 0
for char in words:
if char in guesses:
print char,
else:
print"_",
failed += 1
if failed == 0:
print "\nyou won Well Done"
break
print
guess = raw_input("guess a character:")
guesses += guess
if guess not in words:
turns -= 1
print "wrong\n"
print "you have", + turns, "more guesses"
if turns == 0:
print "you lose GAME OVER\n"
input()
Username()
waiting()
Random
我希望它采用名称值,用户在开始时输入,然后将该值传递到结束消息中。
示例
print "you have won (NAME) Well Done"
或
print "you lose (NAME) GAME OVER"
请有人帮助我,因为我每次尝试都会收到错误消息时可以解决问题。
您应该将 'name' 声明为全局变量。
name = '' # before def Username
在为该变量赋值之前,请执行以下操作:
global name
name = raw_input("What is your name?")
然后您可以在脚本中的任何地方使用这个变量来打印它的值。
print name, "you lose GAME OVER\n"
P.S :要写入全局变量,必须在前面加上:
global <variable-name>
然而,您可以通过正常方式读取其值
您可以简单地 return 函数 'Username()' 中的名称。
def Username():
...
return name
def main():
...
name = Username()
...