在我的代码里它说x没有定义?

2024-06-01 10:06:56 发布

您现在位置:Python中文网/ 问答频道 /正文

def randomcheetahs():
x = random.randint(1,2)
if x == 1:
    r = 'present'
elif x == 2:
    r = 'absent'
return r

猎豹=随机猎豹()

它说x==1: 未定义。我该怎么解决这个问题呢? 坦克


Tags: returnifdefrandom未定义randintelif猎豹
2条回答

我想也许你的代码是这样缩进的

def randomcheetahs():
    x = random.randint(1,2)
if x == 1:
    r = 'present'
elif x == 2:
    r = 'absent'
return r

cheetahs = randomcheetahs()

你需要像这样缩进它。注意不要混淆标签和空格。只使用空格是个好主意

def randomcheetahs():
    x = random.randint(1,2)
    if x == 1:
        r = 'present'
    elif x == 2:
        r = 'absent'
    return r

cheetahs = randomcheetahs()

正如wim所说,你也可以这样做:

def randomcheetahs():
    return random.choice(['present', 'absent'])

但是对于初学者来说,理解缩进在Python中是如何工作的是很重要的

可能是因为你没有正确使用缩进。 除第一行外,每行缩进4个空格。你知道吗

然而,我没有一个编译器在这里,所以我不能检查它。你知道吗

顺便说一句,您的代码可以重写为:

def randomcheetahs(): 
    return 'present' if random.randint(1,2) == 1 else 'absent'

相关问题 更多 >