python实现引用其他路径包里面的模块

问题:一个文件夹c下的模块test要引用另一个包b里面模块test2的函数add,如下图

解决办法:

经过前辈oyljerry等的指点迷津,要在sys.path添加包a的路径,永久添加则在/usr/lib/python2.7/dist-packages添加一个pth文件。如临时添加测试,可以使用列表函数append把该路径放入列表尾部即可。

为什么不是包b的路径呢?因为虽然a和b都是一个包,如添加包b的路径到搜索路径列表,则python搜索时先遇到a把它当作包处理,就不往里面寻找,导致包b没找到进而也不能添加到搜索路径列表

添加原因,python的搜索路径其实是一个列表,它是指导入模块时,python会自动去找搜索这个列表当中的路径,如果路径中存在要导入的模块文件则导入成功,否则导入失败

解决过程:

在pycharm里面,用一个文件夹下的模块引用另外一个文件夹下的模块,可参考下面这篇文章

Pycharm+Python工程,引用子模块的实现

以上这篇python实现引用其他路径包里面的模块就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • python模块导入的细节详解

    python模块导入细节 本文主要介绍了关于python模块导入的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧 官方手册:https://docs.python.org/3/tutorial/modules.html 可执行文件和模块 python源代码文件按照功能可以分为两种类型: 用于执行的可执行程序文件 不用与执行,仅用于被其它python源码文件导入的模块文件 例如文件a.py和b.py在同一目录下,它们的内容分别是: # b.py x="var x in m

  • 详解在Python中以绝对路径或者相对路径导入文件的方法

    1.在Python中以相对路径或者绝对路径来导入文件或者模块的方法 今天在调试代码的时候,程序一直提示没有该模块,一直很纳闷,因为我导入文件一直是用绝对路径进行导入的.按道理来讲是不会出现模块找不到的情况的. 最后仔细分析了整个代码的目录结构,才发现了问题. 下面依次来说明一下今天的情况 先看导入的代码: 在demo--mnist.py文件中执行以下两种导入操作 # 第一处 from gcforest.gcforest import GCForest from gcforest.utils.co

  • Python3导入自定义模块的三种方法详解

    前话 最近跟着廖雪峰的教程学到 模块 这一节.关于如何自定义一个模块,如果大家不懂的话先来看看基本的介绍: 模块 在计算机程序的开发过程中,随着程序代码越写越多,在一个文件里代码就会越来越长,越来越不容易维护. 为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里,这样,每个文件包含的代码就相对较少,很多编程语言都采用这种组织代码的方式.在Python中,一个.py文件就称之为一个模块(Module). 使用模块有什么好处? 最大的好处是大大提高了代码的可维护性.其次,编写代码不必从零

  • python实现引用其他路径包里面的模块

    问题:一个文件夹c下的模块test要引用另一个包b里面模块test2的函数add,如下图 解决办法: 经过前辈oyljerry等的指点迷津,要在sys.path添加包a的路径,永久添加则在/usr/lib/python2.7/dist-packages添加一个pth文件.如临时添加测试,可以使用列表函数append把该路径放入列表尾部即可. 为什么不是包b的路径呢?因为虽然a和b都是一个包,如添加包b的路径到搜索路径列表,则python搜索时先遇到a把它当作包处理,就不往里面寻找,导致包b没找到

  • python import 引用上上上级包的三种方法

    目录 方法一 方法二 方法三 方法一 相对引用: from … import base ,上级目录 from … import base,上上级目录 from ..base import xx 详细原因请参考:https://www.cnblogs.com/jiaxin359/p/7580375.html 方法二 用sys.path.append # coding=utf-8 import sys import os CURRENT_DIR = os.path.split(os.path.abs

  • python文件读取和导包的绝对路径、相对路径详解

    目录 一.文件读取的绝对路径和相对路径 二.package的绝对路径及相对路径导入 2.1 导包以绝对路径导入 2.2 导包以相对路径导入 三.运行脚本的当前工作路径和绝对路径 总结 文件目录层级 一.文件读取的绝对路径和相对路径 用相对路径和绝对路径读取上一层目录的文件.下一层目录的文件及读取同层级的文件. # @File : platform.py.py """1.绝对路径读取文件""" with open(r"C:\Users\c

  • 详解python如何引用包package

    python中引用包的方法: python中引用包可以使用"import 包名"语句引用包 示例:引入time import time 也可以用"from 包名 import 类名"的方式引用包 示例:引入time.time类 from time import time 内容扩展: 什么是Python Package 如何区分你看到的目录是一个Python Package包呢?其实很简单,你只要看这个名录下是否有"__init__.py"这个文件

  • Python标准库os.path包、glob包使用实例

    os.path包 os.path包主要用于处理字符串路径,比如'/home/zikong/doc/file.doc',提取出有用的信息. 复制代码 代码如下: import os.path path = '/home/zikong/doc/file.doc' print(os.path.basename(path))    # 查询路径中包含的文件名 print(os.path.dirname(path))     # 查询路径中包含的目录 info = os.path.split(path) 

  • Java在制作jar包时引用第三方jar包的方法

    我用的是Eclipse打包,但在CMD窗口执行的时候报"ActiveMQ.jar中没有主清单属性"错误. 在网上搜了下,这个与MANIFEST.MF文件有关,该文件没有定义MAIN方法所在类的路径,利用好压打开jar包,果然如此.里面只有一行 Manifest-Version: 1.0 需添加Main-Class.在本例中,添加如下: Main-Class: com.luoluo.TestUse.activemq.ActiveMQStateMain 上面,有几点需要注意: 1. Mai

  • 浅谈python编译pyc工程--导包问题解决

    利用python 编译工程,生产pyc文件 pyc文件好处:是一种二进制机器码,并且隐藏了源文件代码,但是有和py文件一样的功能(可以理解为效果一样) 所以可以将代码隐藏,便于商业价值,保护代码隐私还能和py文件一样可运行 import compileall compileall.compile_dir(r'/path') 所以在一些情况下,需将源文件工程批量生成pyc文件来隐藏代码. 上面代码即为 批量生成pyc的脚本更改path路径为根目录即可(根目录为最顶层目录需包括所有用到的文件) 运行

  • 浅谈Python脚本开头及导包注释自动添加方法

    1.开头:#!/usr/bin/python和# -*- coding: utf-8 -*-的作用 – 指定 #!/usr/bin/python 是用来说明脚本语言是python的 是要用/usr/bin下面的程序(工具)python,这个解释器,来解释python脚本,来运行python脚本的. #!/usr/bin/python:是告诉操作系统执行这个脚本的时候,调用 /usr/bin 下的 python 解释器: #!/usr/bin/env python(推荐):这种用法是为了防止操作系

  • Python代码一键转Jar包及Java调用Python新姿势

    需求背景 进击的Python 随着人工智能的兴起,Python这门曾经小众的编程语言可谓是焕发了第二春. 以tensorflow.pytorch等为主的机器学习/深度学习的开发框架大行其道,助推了python这门曾经以爬虫见长(python粉别生气)的编程语言在TIOBE编程语言排行榜上一路披荆斩棘,坐上前三甲的宝座,仅次于Java和C,将C++.JavaScript.PHP.C#等一众劲敌斩落马下. 当然,轩辕君向来是不提倡编程语言之间的竞争对比,每一门语言都有自己的优势和劣势,有自己应用的领

随机推荐