根据你提供的信息,可能是因为Python标准库中的
random模块没有
randint()函数而导致的。
这种情况通常是由于使用了名称相同但含义不同的第三方库名字比如说文件本身命名为"random.py"而引起的。这时候在程序运行
import random时,Python会优先从当前工作目录(即程序所在的目录)搜索
random.py。由于这个文件不是Python标准库中的
random模块,因此会找不到
randint()等函数,并提示“AttributeError: module 'random' has no attribute 'randint'”错误。
要解决这个问题,可以采用以下两种方法之一:
1. 避免将程序文件命名为与Python标准库中的模块名相同,例如更改程序文件名为
random_game.py等。
2. 显式地指定使用Python标准库中的
random模块,而不是从当前工作目录或其他地方加载一个名字相同的模块,可以采用以下代码:
- import random
- class Person:
- def __init__(self,name):
- self.name = name
-
- def play(self,num):
- win = 0
- for i in range(num):
- if random.randint(0,1) == 1:
- win += 1
- print(f"The {self.name} Win!")
- else:
- print("The Computer Win!")
-
- print(f"{self.name} win {win} times in {num} games.")
-
- if __name__ == "__main__":
- person = Person("Jack")
- person.play(100)
复制代码
这样可以确保使用Python标准库中的
random模块,并避免了名称冲突带来的问题。
如果问题已经解决,请设置最佳答案