0

我使用了这段代码,它显示我有一个语法错误:

我是 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

4 回答 4

4

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

应该:

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

或更简单:

if '0' <= val <= '9'

于 2013-02-08T07:25:38.340 回答
1

错误的顺序。而不是=<它应该是<=

val <= '0'

and不是&

if val <= '0' and val >= '9':
于 2013-02-08T07:24:27.510 回答
1

这一行在这里:

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

应该:

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

请注意大于和小于号的方式,以及单词and而不是&的使用。

于 2013-02-08T07:27:02.063 回答
0

这有效:

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 and val <= 9:
        display(val)
于 2013-02-08T07:28:16.963 回答