python中导入py文件为什么是导入模块

如题所述

项目中想使用以前的代码,或者什么样的需求致使你需要导入外部的包
如果是web 下,比如说django ,那么你新建一个app,把你需要导入的说用东东,都写到这个app中,然后在setting中的app也配上基本就ok了
如果是本地代码,可以有几种方式,
1、这种最简单,也可能最不实用,将你的外部文件放到跟需要调用外部文件的文件同一个包下,同一目录
folder
------toinvoke.py
------tobeinvoded.py
这样在toinvoke.py 中引入
import toveinvoked 或 from tobeinvoked import *
即可
2、你的其他文件不是单个文件,或者不能如上所说放到同一目录下,而是在不同目录中,子目录
folder
------tobeinvodedA.py
------tobeinvodedB.py
------tobeinvodedC.py
toinvoke.py
这种情况,现在folder 下新建一个__init__.py 的空文件,此时的folder不再是一个普通的文件夹,而是一个包 package,现在像这样
folder #文件夹 现在的性质为一个python包package
------__init__.py
------tobeinvoded.py
------tobeinvodedA.py
------tobeinvodedB.py
------tobeinvodedC.py
toinvoke.py
这样在toinvoke.py 中引入
import folder.toveinvoked 或 from folder.tobeinvoked import *
即可
3、同理,如果是如下的情况,folderB中的模块要调用folderA中的模块,方法同上,有什么改变,你已经知道了

folderA
------tobeinvoded.py
------tobeinvodedA.py
------tobeinvodedB.py
------tobeinvodedC.py

folderB
--------toinvoke.py

这样在toinvoke.py 中引入

import folder.toveinvoked 或 from folder.tobeinvoked import *
即可
4、将要被调用的代码拷贝到$PYTHONHOME$\Lib\site-packages 下面,这个就跟Eclipse插件安装差不多

5、在$PYTHONHOME$\Lib\site-packages 下面新建一个.pth文件,比如说是MyPackage.pth,里面的内容是你的包的绝对路径比如:E:/PythonPrj
那么,在E:/PythonPrj下的所有包都可以按照包所在的相对路径引入,这个跟Eclipse插件安装的link 方式差不多
6、跟上面的差不多,也可以加个环境变量,这个就不多说了

总结、看看Python的包搜索路径
Python会在以下路径中搜索它想要寻找的模块:
1. 程序所在的文件夹
2. 标准库的安装路径
3. 操作系统环境变量PYTHONPATH所包含的路径

将自定义库的路径添加到Python的库路径中去,有如下两种方法:
1. 动态的添加库路径。在程序运行过程中修改sys.path的值,添加自己的库路径
import sys
sys.path.append(r'your_path')
2. 在Python安装目录下的\Lib\site-packages文件夹中建立一个.pth文件,内容为自己写的库路径。示例如下
E:\\work\\Python\\http
E:\\work\\Python\\logging
温馨提示:内容为网友见解,仅供参考
无其他回答

为何python要引入模块的概念?
Python 模块(Module),是一个 Python 文件,以 .py 结尾,包含了 Python 对象定义和Python语句。模块让你能够有逻辑地组织你的 Python 代码段。把相关的代码分配到一个模块里能让你的代码更好用,更易懂。模块能定义函数,类和变量,模块里也能包含可执行的代码。模块的引入 模块定义好后,我们可以...

python导入模块的语句
Python是一种开放源代码的、面向对象的编程语言,其设计初衷是为了提高代码的可读性和可维护性。模块是Python程序的一种组织方式,可以将相关的代码组织到一个文件中,形成一个独立的模块。通过导入模块,我们可以将复杂的程序分解成更小的、更容易管理的部分。这有助于代码的重用和协作开发。此外,导入模...

Python模块的导入(import还是from…import)
在Python编程中,模块扮演着至关重要的角色,它们是".py"文件,封装了多种函数,便于在项目中调用。模块好比一辆汽车,代码则是其中的组件,函数就像标准的发动机和轮胎。Python虽然内置函数有限,但通过丰富的模块库,我们可以进行高效的数据分析和机器学习任务。标准库提供了约200多个模块,涵盖了数学、系统...

任何一个普通的.py文件可以作为模块导入吗
可以。在Python中,模块是一种组织和重用代码的方式,可以将相关的函数、类和变量封装在一个.py文件中,并在其他.py文件中通过导入模块来使用其中的代码。

深入了解Python的import机制
Python中官方定义,导入机制允许代码在不同模块间访问,通过导入过程实现。日常开发中,我们常使用`from xxx import xxx`或`import xx`导入包。包中常包含`__init__.py`文件,引发好奇。本文将深度探讨模块\/包与导入机制的加载、搜索过程,以Python 3.9.1文档为参考。模块定义为逻辑上组织Python代码的...

详解Python中import方法引入模块
`-- test1.py 若在程序test2.py中导入模块mod1和mod2。首先需要在mod2下建立__init__.py文件(同(2)),src下不必建立该文件。然后调用方式如下:下面程序执行方式均在程序文件所在目录下执行,如test2.py是在cd sub;之后执行python test2.py 而test1.py是在cd src;之后执行python test1.py; ...

python使用相对导入的具体意义?
现在,假设模块main试图导入名为string的模块。在 Python 2.X和更早版本中,Python会先寻找mypkg目录以执行相对导入。这会找到并导入位于该处的string.py文件,将其赋值给mypkg.main模块命名空间内的名称string。不过,这一导入的本意可能是要导入Python标准库的string模块。可惜的是,在这些Python版本中,...

python中的import指的是什么
Python中的import语句是用来调用模块的。一、module 通常模块为一个文件,直接使用import来导入就好了。可以作为module的文件类型有"py"、"pyo"、"pyc"、"pyd"、"so"、"dll"二、package 通常包总是一个目录,可以使用import导入包,...

python 导入模块问题
具体来说,是使用句点来决定如何相对导入其他包或模块。这么做的原因是为了避免偶然情况下导入标准库中的模块产生冲突。这里我们以PEP 328中给出的文件夹结构为例,看看相对导入是如何工作的: my_package\/ __init__.py subpackage1\/ __init__.py module_x.py module_y.py subpackage2\/ __init__.py module...

python中的模块、库、包有什么区别?
模块,作为Python程序的载体,以.py为后缀,可以被导入并使用,是构建程序的基础单元。导入模块有两种常见方式,且应避免使用错误的导入语法,以防止名称冲突问题。使用if __name__ == '__main__':语句可确保仅在直接运行模块时执行测试代码,而不会在其他程序导入时运行。模块包含说明文档,通常位于...

相似回答