Python导入不同文件夹中文件的方法详解

 更新时间:2022年06月14日 15:49:24   作者:IT__learning  
在写python程序的时候,经常会用到引入其他文件夹里的py文件,下面这篇文章主要给大家介绍了关于Python导入不同文件夹中文件的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下

前言

在写 python 程序的时候,经常会用到引入其他文件夹里的 py 文件,要是都在同目录下直接 import 就好了,可是有的不在同一个目录,很多时候就直接 import 报错了。下面介绍导入文件的方法:

一、导入同一目录下的文件

如下图,main.py 和 config.py 文件都在同一个目录。

如果要在 mian.py 中导入 config.py,代码如下:

import config

二、导入不同目录下的文件

1、 调用子目录下的文件

目录如下:

如果要在 main.py 中导入同级目录下的子目录文件 BERT_BiLSTM_CRF.py,就必须在 model 文件夹下建立空文件__init__.py文件。新的目录结构如下:

导入代码如下:

from model.BERT_BiLSTM_CRF import BERT_BiLSTM_CRF    # 导入文件下的 BERT_BiLSTM_CRF 函数

2、导入上级目录下的文件

目录如下:

想要实现 main.py 调用 BERT_BiLSTM_CRF.py,做法是先跳到上级目录 BERT-Chinese-NER-pytorch 下面,然后在 model 目录下建一个空文件 init.py ,就可以像第二步调用子目录下的模块一样进行调用了。新的目录结构如下:

导入代码如下:

import sys
sys.path.append("..")    # 跳到上级目录下面(sys.path添加目录时注意是在windows还是在Linux下,windows下需要‘\\'否则会出错。)
from model.BERT_BiLSTM_CRF import BERT_BiLSTM_CRF    # 导入

关于 init.py

在 python 模块的每一个包中,都有一个 init.py 文件(这个文件定义了包的属性和方法),然后是一些模块文件和子目录,假如子目录中也有__init__.py ,那么它就是这个包的子包了。当你将一个包作为模块导入(比如从 xml 导入 dom )的时候,实际上导入了它的__init__.py 文件。

一个包是一个带有特殊文件 __init__.py 的目录,__init__.py 文件定义了包的属性和方法。其实它可以什么也不定义,可以只是一个空文件,但是必须存在。如果 __init__.py 不存在,这个目录就仅仅是一个目录,而不是一个包,它就不能被导入或者包含其它的模块和嵌套包。

附:python 导入一个文件夹下的所有文件

import os

path=""			#填写自己想要读取的文件夹路径
files=os.listdir(path)

text=''
for file in files:
     position=path+file
#     print(position)
    with open(position ,'r',encoding='utf-8') as f:
        for line in f.readlines():
           text+=line      
print(text)

总结

到此这篇关于Python导入不同文件夹中文件的文章就介绍到这了,更多相关Python导入不同文件夹文件内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python 中省略号对象的使用

    Python 中省略号对象的使用

    作为一名经验丰富的 Python 开发人员,您可能遇到过 Python 中的三个点…省略号对象, 如果您尝试在 Python 解释器中打印此内容,它将显示一个省略号,本篇文章将介绍 Python 中省略号对象的使用,感兴趣的朋友跟随小编一起看看吧
    2023-10-10
  • Python网络爬虫信息提取mooc代码实例

    Python网络爬虫信息提取mooc代码实例

    这篇文章主要介绍了python网络爬虫与信息提取mooc,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-03-03
  • QML实现钟表效果

    QML实现钟表效果

    这篇文章主要为大家详细介绍了QML实现钟表效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-06-06
  • pytorch:实现简单的GAN示例(MNIST数据集)

    pytorch:实现简单的GAN示例(MNIST数据集)

    今天小编就为大家分享一篇pytorch:实现简单的GAN示例(MNIST数据集),具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-01-01
  • Python绘制七段数码管实例代码

    Python绘制七段数码管实例代码

    这篇文章主要介绍了Python绘制七段数码管实例代码,具有一定借鉴价值,需要的朋友可以参考下。
    2017-12-12
  • python interpret库训练模型助力机器学习

    python interpret库训练模型助力机器学习

    这篇文章主要为大家介绍了python interpret库训练模型功能特性,为你的机器学习提供便捷的路径,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2024-01-01
  • Python中input与raw_input 之间的比较

    Python中input与raw_input 之间的比较

    这篇文章主要介绍了Python中input与raw_input 之间的比较的相关资料,通过本文希望能帮助到大家,对于他们之间的使用方法和区别,需要的朋友可以参考下
    2017-08-08
  • Python操作Sql Server 2008数据库的方法详解

    Python操作Sql Server 2008数据库的方法详解

    这篇文章主要介绍了Python操作Sql Server 2008数据库的方法,结合实例形式分析了Python使用pyodbc库操作Sql Server 2008数据库的连接、执行sql语句、关闭连接等相关操作技巧与注意事项,需要的朋友可以参考下
    2018-05-05
  • Python复制Excel带有条件格式的单元格sheet实现步骤

    Python复制Excel带有条件格式的单元格sheet实现步骤

    这篇文章主要为大家介绍了Python复制Excel带有条件格式的单元格sheet实现步骤,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-07-07
  • 在Python中字符串、列表、元组、字典之间的相互转换

    在Python中字符串、列表、元组、字典之间的相互转换

    这篇文章主要介绍了在Python中字符串、列表、元组、字典之间的相互转换,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-11-11

最新评论