Python使用中报错信息:AttributeError: ‘builtin

Python使用中报错信息:AttributeError: ‘builtin,第1张

目录

一、报错信息:

二、报错代码:

1、一个简单的生成随机数的代码:

2、代码编写的过程:

三、报错的原因:

1、没有搞清楚导入的是模块,还是方法:

2、其他类似的情况:


一、报错信息:

AttributeError: 'builtin_function_or_method' object has no attribute 'randint'

翻译:AttributeError:“内置函数”或“方法”对象没有属性“randint”

二、报错代码: 1、一个简单的生成随机数的代码:
from random import random

print(random.randint(1,5))
2、代码编写的过程:

当时,自己想测试一下random.randint(),感觉自己很熟悉这个函数,就没有导入random模块,vscode自动给补充的导入库,自动导入了from random import random。正常的话,我自己会这样导入import random。

import random
print(random.randint(1,5))

这样的话就不会报错,并且会产生一个随机数。

三、报错的原因: 1、没有搞清楚导入的是模块,还是方法:
  • from random import random:仅将random模块下定义的random()方法导进来, 也就是仅仅可以使用random()这一个方法,所以直接调用random()方法没有报错, 但是调用random模块下的其他方法就会报错,所以调用randint方法时报错。
  • import random :导入的是整个random模块,random模块下所有方法都可以调用。
  • 如果不想让它报错, 可以使用from random import *, 即将random模块中的所有方法都导进来, 自然包括random()方法和randint()方法,此时你再单独使用randint()方法自然不会报错。
from random import *
print(randint(1,5))
print(random())

如果是这样使用方法:random.randint(),那么必须要import random,这样导入整个库。如果是from random import random 或者是 from random import random导入的是方法,再这样使用就会报错。 

2、其他类似的情况:

报错信息:'builtin_function_or_method' object has no attribute 'sleep'

使用 time.sleep(n) 挂起函数时,遇到这个错误。

原因:使用导入是 from time import *

解决:导入换成 import time

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/790173.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-05
下一篇 2022-05-05

发表评论

登录后才能评论

评论列表(0条)

保存