python-import相关内容

我应该隐藏从__dir__方法导入的依赖项吗?

我正在使用具有多个模块(一个文件夹、多个文件)的单个导入包制作一个Python分发包。包具有在模块中导入的依赖项。当用户从导入包中导入模块时,他们还可以访问在函数外部导入的依赖项。我已经找到了解决办法,但我不确定这是不是一个好主意。 模块joke.py的选项A from markdown import markdown def joke(): return markdown( ..
发布时间:2022-03-31 17:50:20 Python

如果我在一个函数中导入一个模块,变量会是局部的吗?

如果我在一个函数(局部作用域)内导入了Python3中的一个模块,那么导入的内容会是该函数的本地对象吗? 喜欢 def test(): import math s = math.cos(1) s = math.cos(1) 推荐答案 是,模块将是函数的本地模块,至少在上面的示例中是这样(我使用的是Python3.6)。 示例: Python 3.6 ..
发布时间:2022-03-31 17:49:17 Python

Python:在函数中使用在类内完成的导入

谁能解释一下如何使下面的示例工作?由于类中的几个函数将使用来自Platform的相同函数,我认为直接将其导入到类中会更好,但我不知道如何在函数中使用它(因为我经常收到有关它的错误)。 #!/usr/bin/python class test: from platform import system is_linux(self): system = system() ..
发布时间:2022-03-31 17:46:54 Python

Python:`From导入*`不是全部导入

我知道import *不好,但有时当我懒得打字或记不住导入时,我会使用它进行快速原型制作 我正在尝试以下代码: from OpenGL.GL import * shaders.doSomething() 它会导致错误:`NameError:未定义全局名称‘shaders’‘ 如果我更改导入: from OpenGL.GL import * from OpenGL.GL ..
发布时间:2022-03-31 17:44:05 Python

Python动态导入--如何从模块名称从变量导入*?

如前所述here,我们可以使用字符串变量动态导入模块。 import importlib importlib.import_module('os.path') 我的问题是如何import *从字符串变量? 像这样的东西现在不起作用 importlib.import_module('os.path.*') 推荐答案 您可以执行以下操作: >>> import i ..
发布时间:2022-03-31 17:40:07 Python

Python:导入导入文件&Quot;

我导入了许多不同的脚本,所以在我的文件顶部,它被导入语句弄得乱七八糟,即: from somewhere.fileA import ... from somewhere.fileB import ... from somewhere.fileC import ... ... 有没有办法将所有这些文件移动到其他地方,然后我所要做的就是导入该文件,这样它就只是一个干净的导入? 推荐答案 ..
发布时间:2022-03-31 17:36:41 Python

从IDLE VS Shell中的包导入

导入整个包在IDLE中工作,但在外壳中不起作用。以下各项在空闲状态下工作正常: import tkinter as tk tk.filedialog.askopenfilename() 在外壳程序中,我收到以下错误: AttributeError: 'module' object has no attribute 'filedialog' 我知道我必须import tkinte ..
发布时间:2022-03-31 17:27:52 Python

正确导入Python中的模块

如何设置模块导入,以便每个模块可以访问所有其他模块的对象? 我有一个中等大小的Python应用程序,模块文件位于不同的子目录中。我已经创建了将这些子目录附加到sys.path的模块,并使用import thisModule as tm导入了一组模块。使用该限定来引用模块对象。然后我使用from moduleImports import *将该模块导入到其他模块中。代码现在是草率的,并且有几个 ..
发布时间:2022-03-31 17:25:49 Python

让Python在我的脚本之前运行几行

我需要运行脚本foo.py,但我还需要在foo.py中的代码之前插入一些要运行的调试行。目前,我只是将这些行放在foo.py中,我很小心地不将其提交给Git,但我不喜欢这个解决方案。 我想要的是一个单独的文件bar.py,我不提交给Git。然后我想运行: python /somewhere/bar.py /somewhere_else/foo.py 我希望这样做的是首先在bar.p ..
发布时间:2022-03-31 17:23:06 Python

如何在PYTHON中临时修改sys.path?

在我的一个Python测试脚本中,我多次使用此模式: sys.path.insert(0, "somedir") mod = __import__(mymod) sys.path.pop(0) 是否有更简洁的方法临时修改搜索路径? 推荐答案 您可以使用简单的context manager: import sys class add_path(): def _ ..
发布时间:2022-03-31 17:21:43 Python

覆盖Python中的命名空间

假设有一个文件夹‘/home/user/temp/a40bd22344’。名称完全是随机的,并且在每次迭代中都会发生变化。我需要能够使用一个固定的名称,比如‘项目’,在Python中导入这个文件夹。我知道我可以将此文件夹添加到sys.path以启用导入查找,但是否有办法将‘a40bd22344’替换为‘project’? 也许在init.py? 中有一些巧妙的黑客攻击 添加: 它需 ..
发布时间:2022-03-31 17:16:41 Python

Pythons__IMPORT__未按预期工作

使用__import__时,类似于:somepackage.somemodule,返回的模块不是somemodule,无论返回什么似乎都是空的!这是怎么回事? 推荐答案 来自__import__: __import__( name[, globals[, locals[, fromlist[, level]]]]) ... 当名称变量的形式为 包。模块,通常情况下, 顶级包 ..
发布时间:2022-03-31 17:14:27 Python

为什么Python模块有时不导入它们的子模块?

我今天注意到一些奇怪的事情,我想解释一下。我甚至不能100%确定如何将这句话作为一个问题来表达,所以谷歌是不可能的。由于某种奇怪的原因,日志记录模块无权访问模块logging.handpers。如果你不相信我,你自己试试: >>> import logging >>> logging.handlers Traceback (most recent call last): File " ..
发布时间:2022-03-31 17:13:07 Python

IMPORT VS__IMPORT__()VS IMPORTLIB.IMPORT_MODULE()?

我注意到Flask正在使用Werkzeug__import__一个模块,我有点困惑。我查看了它上的文档,发现它似乎在某种程度上让您在查找模块的位置方面有了更多的控制权,但我不确定确切地如何,我也完全不知道它与importlib.import_module有什么不同。 Werkzeug示例中的奇怪之处在于它只表示__import__(import_name),所以我看不出这与只使用import ..
发布时间:2022-03-31 17:11:54 Python

确认导入*和来自xxx导入*之间的差异

我惊讶地发现 import foo 和 from foo import * 对全球成员有不同的影响。我想确认我的实验是正确的行为。 在第一个示例中,更改模块foo中的成员将反映在导入foo的所有代码中。但是,在后一种情况下更改该成员似乎只会影响导入该成员的文件。换句话说,使用后一种方法将为每个导入文件提供来自foo的成员的自己的副本。 我想要的行为是可以从所有文件访 ..
发布时间:2022-03-31 17:08:57 Python