如何使用?

时间:2013-06-23 05:49:12

标签: python

我对编程很陌生,我一直在做一个摇滚,纸张,剪刀游戏。这一切都有效,除了最后一部分(if部分)。

x = ("rock")
y = ("paper")
z = ("scissors")
print(x)
print(y)
print(z)
choices1 = (x, y, z)
choices2 = (x, y, z)
import random
print("player 1 chose...")
print(random.choice(choices1))
print("player 2 chose...")
print(random.choice(choices2))
if random.choice(choices1) = rock and         random.choice(choices2) = scissors:
 print("player 1 wins")

每当我尝试执行脚本时,都会说:

File "<string>", line 14
 if random.choice(choices1) = rock and random.choice(choices2) = scissors:
                         ^
SyntaxError: invalid syntax

3 个答案:

答案 0 :(得分:4)

您需要==而不是=

if random.choice(choices1) == "rock" and random.choice(choices2) == "scissors":
    print("player 1 wins")

其次,由于您没有声明任何名为rockscissors的变量,因此您必须使用它们周围的引号来制作字符串,否则您将获得NameError

或使用指向字符串&#34; rock&#34;的变量xz。和&#34;剪刀&#34;:

if random.choice(choices1) == x and random.choice(choices2) == z:
    print("player 1 wins")

==用于检查相等性,=用于分配。

>>> "foo" == "bar"
False
>>> "foo" == "foo"
True

由于您在获取if SyntaxError语句的{{1}}语句中不允许转让。

答案 1 :(得分:1)

相等的比较运算符是==而非=

=用于将项目分配给对象,例如var = 5。因此SyntaxError

来自docs

标准比较运算符的编写方式与C中相同:<(小于),>(大于),==(等于),<= (小于或等于),>=(大于或等于)和!=(不等于)。


此外,rock未定义,因此您还将获得NameError。我假设它应该是一个字符串,所以把它"rock"

答案 2 :(得分:0)

比较运算符必须是== not =。请看以下详细信息: http://www.tutorialspoint.com/python/python_basic_operators.htm

相关问题