czzhbq 发表于 2021-8-8 10:11:14

为什么这个代码老是运行报错呢?我是跟着老师一起写的,python 3.8.2版本

count=1
while count<=10:
    person=int(input('请出拳:'))
    computer=random.randint(0,2)
    if person==0 and computer==1:#多条件
      print('厉害了,你赢了')
      pass
    elif person==1 and computer==2:
      print('厉害了,你赢了')
      pass
    elif person==2 and computer==0:
      print('厉害了,你赢了')
      pass
    elif person==computer:
      print('不错,居然是平手')
      pass

    else:
      print('哈哈我输了')
      pass
    count+=1


总是报错,为什么?


请出拳:1
Traceback (most recent call last):
File "E:\python\while.py", line 21, in <module>
    computer=random.randint(0,2)
NameError: name 'random' is not defined

青出于蓝 发表于 2021-8-8 10:25:00

第一行加
import random

青出于蓝 发表于 2021-8-8 10:25:47

需要导入random这个库
import random
count=1
while count<=10:
    person=int(input('请出拳:'))
    computer=random.randint(0,2)
    if person==0 and computer==1:#多条件
      print('厉害了,你赢了')
      pass
    elif person==1 and computer==2:
      print('厉害了,你赢了')
      pass
    elif person==2 and computer==0:
      print('厉害了,你赢了')
      pass
    elif person==computer:
      print('不错,居然是平手')
      pass

    else:
      print('哈哈我输了')
      pass
    count+=1

czzhbq 发表于 2021-8-8 10:32:35

person=int(input('请出拳:'))
computer=random.randint(0,2)
if person==0 and computer==1:#多条件
    print('厉害了,你赢了')
    pass
elif person==1 and computer==2:
    print('厉害了,你赢了')
    pass
elif person==2 and computer==0:
    print('厉害了,你赢了')
    pass
elif person==computer:
    print('不错,居然是平手')
    pass

else:
    print('哈哈我输了')


这个代码没有加import random就可以运行,是因为random在if语句外就已经定义了是吗?

青出于蓝 发表于 2021-8-8 11:29:44

czzhbq 发表于 2021-8-8 10:32
这个代码没有加import random就可以运行,是因为random在if语句外就已经定义了是吗?

这个也会报错的,必须要导入random这个模块,才能使用
如果问题已解决,请及时设置最佳答案
页: [1]
查看完整版本: 为什么这个代码老是运行报错呢?我是跟着老师一起写的,python 3.8.2版本