如何使用def函数获取玩家输入并更改变量

时间:2016-03-11 03:51:40

标签: python python-2.7

我是使用Python(2.7)的新手,我遇到了一个我试图解决的问题,但现在我想请求这个网站上的任何人知道我做错了什么以及如何解决它。我的问题显示在这段代码中......

num1 = '*'
num2 = '*'
num3 = '*'
num4 = '*'
num5 = '*'
num6 = '*'
num7 = '*'
num8 = '*'
num9 = '*'

print num1
print num2
print num3
print num4
print num5
print num6
print num7
print num8
print num9
print 

def position(x):
    if x == '1':
        num1 = 'X'
    elif x == '2':
        num2 = 'X'
    elif x == '3':
        num3 = 'X'
    elif x == '4':
        num4 = 'X'
    elif x == '5':
        num5 = 'X'
    elif x == '6':
        num6 = 'X'
    elif x == '7':
        num7 = 'X'
    elif x == '8':
        num8 = 'X'
    elif x == '9':
        num9 = 'X'

player_input = raw_input("Please enter a position: ")
position(player_input)

print num1
print num2
print num3
print num4
print num5
print num6
print num7
print num8
print num9
print 

我尝试过使用全局变量,如果我不使用def函数,我可以确认它是否有效。

感谢您的时间 〜内特

1 个答案:

答案 0 :(得分:0)

Python要求在函数内部明确标记全局变量。

def position(x):
    global num1
    if x == '1':
        num1 = 'X'
    ...