【问题标题】:Python 3 How to check if a variable is in a listPython 3 如何检查变量是否在列表中
【发布时间】:2015-06-20 11:33:07
【问题描述】:

我正在尝试制作 TicTacToe 游戏,并且我确实有一个基本可用的原型,并设法将其转换为 exe 文件等等,但我要回去尝试创建一个输入必须是一个有效的选项,否则会弹出错误消息并重新启动 p1 函数。 python 如何检查输入是否与列表中的任何一项匹配?

忽略全局变量,它们与问题没有任何关系,它们是为了董事会。

def p1():
    global top
    global a1
    global a2
    global a3
    global b1
    global b2
    global b3
    global c1
    global c2
    global c3
    print()
    print('Player One, it is your move')
    x = input()
        if str(x) == any('a1','A1','a2','A2','a3','A3','b1','B2','b3','B3','c1','C1','c2','C2','c3','C3'):
            # A lot of code goes here
    elif x == 'restart':
        begin()
    else:
        print('Invalid Command')
        print()
        p1()

【问题讨论】:

    标签: list python-3.x if-statement


    【解决方案1】:

    使用in:

    if x in ('a1','A1','a2','A2','a3','A3','b1','B2','b3','B3','c1','C1','c2','C2','c3','C3')
    

    这将检查存储在x 变量中的值是否在元组的元素中。

    【讨论】:

    • 按照要求做的,但是测试第一个和第二个字符的边界不是更容易吗?
    • 也许它更容易并且有更好的方法,但看起来作者对高级主题的 Python/编程还不够了解。
    • @warvariuc 是的,我仍然掌握基本知识,因此是井字游戏。
    • @Jongware 看起来你有编程经验。但从我在代码中看到的,作者没有。 IMO,这无助于人们向他们展示正确的方式,当他们从自己的经验中了解自己时,他们会学得更好。一个好学生会不断改进他的程序,有时会从头开始重写程序。这是一个迭代过程。
    • 是的!这就是我在writing this 时确实发现的。我对要使用的算法有一个清晰的概念,并且(除了冒号)Python 做了我想要的。我在使用 Sublime 的 API 文档时遇到了更多问题。
    猜你喜欢
    • 2014-10-06
    • 1970-01-01
    • 1970-01-01
    • 2017-01-27
    • 1970-01-01
    • 1970-01-01
    • 2018-05-01
    • 2011-12-25
    • 1970-01-01
    相关资源
    最近更新 更多