千家信息网

Python怎么导入自己编写的py文件

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,这篇文章将为大家详细讲解有关Python怎么导入自己编写的py文件,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一. 想要实现的效果新建文件夹将自编模块集中管理可在
千家信息网最后更新 2026年11月02日Python怎么导入自己编写的py文件

这篇文章将为大家详细讲解有关Python怎么导入自己编写的py文件,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

一. 想要实现的效果

新建文件夹将自编模块集中管理

可在其它py文件内import 自编模块,像import第三方库一样

二. 实现的方法

步骤1:将编号的模块 *.py放入文件夹,在我计算机中是:F:\OneDrive\PythonPrj\_myFunction

步骤2:新建用户/系统环境变量。

变量名:PYTHONPATH

变量值:文件夹路径

然后就可以实现想要的效果了,以下三种import方式均可。

这样做的原理是,Python解释器会去以下三个位置找import的模块:

  1. 当前文件所在目录

  2. 环境变量PYTHONPATH指定的目录

  3. Python 默认的安装目录

Python中sys.path变量记录了解释器可Import模块的位置,如下图所示:

所以,可通过操作sys.path变量告诉解释器去哪里找模块,代码如下:

sys.path是个列表,这里用append将一个路径加到了列表中,然后此路径下的模块a就能成功导入了。这种方法多写了两行代码,不方便,所以只适合临时用一下。

三. 进阶用法

如果自编的模块多了,或者想给自编模块加上说明文档的话,还是希望将每个自编模块单独存放在一个文件夹,以便于管理维护。像这样:

然后在文件夹(如myPackage1)内存放自编模块。

这时想导入模块就要按照以下写法:

这是一级子文件夹的写法,更多级文件夹可以一直点(.)下去。当然,一般也就会用到一级子文件夹,二级几乎都不会使用。

四. 使用_init_.py控制导入某文件夹时执行的操作

上述的导入方式一次只能导入一个文件夹里的一个模块,如果想控制一次导入文件夹中的所有模块,而不用一个个用点号去点,我们需要用到_init_.py文件。

此文件需要与模块在同一目录中,如下图所示,Python中将拥有_init_.py文件的文件夹称为包。

每次import myPackage1时,_init.py会自动执行一次,所以也称为包初始化文件。利用这个特性,我们可以在此文件中写一些代码,用来控制导入文件夹myPackage1时的行为。像这样写这个初始化文件:

import sys# 将__init__.py文件所在目录加入Python搜索目录中,否则会提示找不到myModule1sys.path.append(__file__[:-12])import myModule1

然后,在其它py文件中导入myPackage1,因为_init_.py文件自动执行,myModule1文件会自动被导入。验证一下:

当然,即使在包初始化文件里写了import 某模块,还是可以用 import myPackage1.myModule 这样的方式来导入。包初始化文件不会对原本的导入方式有任何影响。

另一种写法,可以一次导入包中某模块中定义的函数和属性,像这样写_init_.py文件:

import sys# 将__init__.py文件所在目录加入Python搜索目录中,否则会提示找不到myModule1sys.path.append(__file__[:-12])import myModule1

然后,在其它py文件导入时这么写:

可见,可以直接使用myModule1中的定义的函数了。

总结一下,导入模块的写法与_init_.py的写法需要保持一致,即要么都import 包名,要么都from 包名 import *,这样才可达到想要的效果。

我对Python理解还不够深入,仅将摸索出来的一些规律分享出来。

关于"Python怎么导入自己编写的py文件"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

文件 模块 文件夹 目录 写法 变量 方式 代码 所在 效果 更多 篇文章 解释器 路径 控制 解释 位置 函数 方法 步骤 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 金融科技创新监管互联网金融 汇久创客互联网科技 互联网科技网站 太原新华互联网科技学校怎么样 卫星互联网科技股票 温州喔噻互联网科技有限公司 欧洲十大科技互联网公司 互联网经济与金融科技 武汉健翔互联网络科技有限公司 河南住房之家互联网科技 卓翼科技产业互联网合作 互联网金融科技名词解释 杭州披云加互联网科技有限公司 互联网营销推广黑科技 广西科技产业互联网是什么 互联网科技收购价值 华人运通互联网科技公司 互联网大会出现的黑科技 现代科技的标志之一的互联网 广州全民伙伴互联网科技有限公司 互联网络科技有限公司 互联网与新科技 火传媒上海互联网科技 山东吉时兔互联网科技有限公司 随着互联网科技发展 乌鲁木齐新华智原互联网科技学校 阿里互联网科技企业 互联网科技快讯热点 互联网科技的前景 伍佰万互联网科技是干嘛的
0