模块调用模块时出错

2024-09-25 20:25:34 发布

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

我有一个函数

def brent(n):

在一个素数模中。布伦特需要模块分数,随机的

在我的主要模块中,我做:

import prime # brent is found in here
import fractions # required for brent
import random # required for brent

当我给布伦特(n)打电话时,它错误地说它找不到random。解决办法是

import random
import fractions

在原始的布伦特函数中。你知道吗

这是故意的行为吗?你知道吗


Tags: 模块函数inimportforisdefrequired
1条回答
网友
1楼 · 发布于 2024-09-25 20:25:34

您应该(通常)在自己的模块顶部导入模块,而不是在函数内部。你知道吗

模块导入将导入的名称绑定到本地作用域,这意味着如果在函数中导入内容,则名称将仅对该函数可用,而在模块中不可用。你知道吗

相关问题 更多 >