当前位置: 首页 > 面试题库 >

如何导入其他Python文件?

董弘新
2023-03-14
问题内容

如何在Python中导入其他文件?

  1. 我到底该如何导入特定的python文件import file.py呢?
  2. 如何导入文件夹而不是特定文件?
  3. 我想根据用户输入在运行时动态加载Python文件。
  4. 我想知道如何从文件中仅加载一个特定部分。

例如,在main.py我有:

from extra import * 

尽管这给了我中的所有定义extra.py,但也许我只想要一个定义:

def gap():
    print
    print

我要从import语句中添加些什么?gapextra.py


问题答案:

importlib是Python中的新增功能,用于以编程方式导入模块。它只是一个包装器,__import__请参见https://docs.python.org/3/library/importlib.html#module-importlib

import importlib

moduleName = input('Enter module name:')
importlib.import_module(moduleName)

更新:以下答案已过时。使用上面的最新替代方法。

只是import file没有'.py'扩展名。

您可以通过添加一个名为的空文件来将文件夹标记为包__init__.py

您可以使用该__import__功能。它以模块名称作为字符串。(同样:模块名称不带“ .py”扩展名。)

pmName = input('Enter module name:')
pm = __import__(pmName)
print(dir(pm))

输入help(__import__)以获取更多详细信息。



 类似资料:
  • 问题内容: 我似乎无法让Python在子文件夹中导入模块。当我尝试从导入的模块创建类的实例时出现错误,但是导入本身成功。这是我的目录结构: 这是server.py的内容: 和user.py: 错误是:AttributeError:’模块’对象没有属性’用户’ 问题答案: 我相信您需要在Models目录中创建一个名为的文件,以便python将其视为模块。 然后,您可以执行以下操作: 您可以在其中添加

  • 我有一些*.pyd文件是在使用Python 3.7.9版本的计算机上创建的。我想在Python3.8.8的计算机上使用它们。有什么办法可以做到这一点吗?再者,有没有什么方法可以创建这些*.pyd文件(或者类似的东西),使它们与其他Python版本兼容呢?

  • 问题内容: 我在一个项目中有一些代码,想在另一个项目中重用。我需要做什么(在两个文件夹中)才能执行此操作? 目录结构类似于: oo 项目1 file1.py file2.py 酒吧 项目2 fileX.py fileY.py 我想使用fileX.py和fileY.py中的file1.py和file2.py中的函数。 问题答案: 理想情况下,两个项目都是可安装的python程序包,并充满__init

  • 我在将存在acrofield从一个pdf导入另一个pdf时遇到问题。这两个pdf相似。我尝试导入并保存文件(下面的代码)。如果我从文件系统打开它,我看不到更改,但如果我用pdfbox打开它,我看到之前插入的acrofile。我注意到文件大小增加了,但当我打开它时,我看不到可填充的字段。 提前谢谢你

  • 一个Android Studio项目包含一个无活动服务,可以通过IMyAidlInterface(属于package com.example.tutorialspoint7.noactivity)与之通信。 另一个Android Studio项目包含一个仅活动的应用程序,仅用于测试前面提到的服务(假设有不同的包,例如com.example.tutorialspoint7.aidlactivity)