Py学习  »  Python

Python-无论用户输入什么,答案都是一样的

Mitchell F • 4 年前 • 448 次点击  

我刚开始学习python,并尝试简单的项目。无论我放什么,石头,纸或剪刀,它总是返回“领带”。我错过了什么?

enter image description here

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/50945
 
448 次点击  
文章 [ 3 ]  |  最新文章 4 年前
Anand kumar Dubey
Reply   •   1 楼
Anand kumar Dubey    4 年前

你的代码有一个简单的错误。 在列表中,每个元素都有第一个大写字母,但是在检查时,您将它与所有小写字母进行比较,并且正如我们所知,string literal或任何与此相关的literal都是区分大小写的,您不会得到与任何语句的匹配。

所以,要么在检查时将您的决定转换为小写,要么将其与正确的文本进行比较。

decision.lower() == 'rock'

decision == 'Rock'

chrisbyte
Reply   •   2 楼
chrisbyte    4 年前

Prabesh有正确的方法,但是在Mitchell的例子中,列表选项是大写的。所有内容都应转换为lower(),以确保所有内容都相等,包括随机决策

decision = decision.lower()
random_decision = random.choice(list).lower()

# now do the if/else checking as normal
if decision == 'rock' and random_decision == 'paper':

    etc...
Prabesh
Reply   •   3 楼
Prabesh    4 年前

在Python中比较文本时,字符大小写很重要。而不是

decision == 'rock'

尝试,

decision.lower() == 'rock'

看看是否有效。

祝你追求好运!