Python初学者的关系运算符

0 投票
4 回答
1231 浏览
提问于 2025-04-17 15:12

我用了一小段代码,结果显示我有一个语法错误:

我还是个Python新手,有人能帮我看看这段代码吗?这是一个非常简单的初学者程序:

#display

def display(val):

    print("the number ",val)

#main program
while True:

    val = input("Enter an integer between 0 and 9 or -1 to quit") ;
    if val == '-1':
        break 
    if val <= '0' & val >= '9':
        display(val)

错误出现在val =< '0'这一部分

抱歉,我刚才写错了,我会编辑问题,附上错误信息:

Traceback (most recent call last):
  File "C:\Users\****\Desktop\ra2\ra.2.py", line 16, in <module>
    if val <= '0' & val >= '9':
TypeError: unsupported operand type(s) for &: 'str' and 'str'

4 个回答

1

顺序错了。应该用 <=,而不是 =<

val <= '0'

还有,应该用 and,而不是 &

if val <= '0' and val >= '9':
1

这一行代码:

if val =< '0' & val >= '9':

应该改成:

if val >= '0' and val <= '9':

注意大于号和小于号的写法,还有用and这个词,而不是&

4

这段代码的意思是:如果变量val的值小于等于'0'并且大于等于'9',那么就执行某些操作。

不过,这样写是不对的,应该改成:

如果val的值大于等于'0'并且小于等于'9'。

或者更简单的写法是:

如果'0'小于等于val并且val小于等于'9'。

撰写回答