Python之inspect模块实现获取加载模块路径的方法

yipeiwu_com7年前Python基础

该文主要介绍如何获取模块的路径,需要申明的是这里所说的模块可以是功能实现的该模块,也可以是别的模块。

使用到的是 inspect 模块的 .getsourcefile(需要获取的模块名)

创建test.py内容如下:

import os
import inspect
 
class pathManager(object):
 
	def __init__(self):
		pass
 
	def _abPath(self):
		modulePath = inspect.getsourcefile(os)
		abPath = os.path.split(modulePath)
		return abPath[0]
 
if __name__ == "__main__":
    getPath = pathManager()
    getPath._abPath()

执行 python test.py 查看结果如下:

clay@aclgcl-ubnt:~/Desktop/python$ python test.py 
/usr/local/lib/python2.7/os.py
('/usr/local/lib/python2.7', 'os.py')
clay@aclgcl-ubnt:~/Desktop/python$

可以看到我们直接获取到了 :/usr/local/lib/python2.7/os.py , 通过 os.path.split可以截取出单纯的路径。

以上这篇Python之inspect模块实现获取加载模块路径的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

详解Python中使用base64模块来处理base64编码的方法

base64模块是用来作base64编码解码的。这种编码方式在电子邮件中是很常见的。 它可以把不能作为文本显示的二进制数据编码为可显示的文本信息。编码后的文本大小会增大1/3。 闲话不说...

Python Socket编程详细介绍

在使用Python做socket编程时,由于需要使用阻塞(默认)的方式来读取数据流,此时对于数据的结束每次都需要自己处理,太麻烦。并且网上也没找到太好的封装,所以就自己写了个简单的封装。...

解决pandas read_csv 读取中文列标题文件报错的问题

从windows操作系统本地读取csv文件报错 data = pd.read_csv(path) Traceback (most recent call last): Fi...

PyQt5 QSerialPort子线程操作的实现

环境: python3.6 pyqt5 只是简单的一个思路,请忽略脆弱的异常防护: # -*- coding: utf-8 -*- import sys from PyQt5....

Python进程间通信之共享内存详解

前一篇博客说了怎样通过命名管道实现进程间通信,但是要在windows是使用命名管道,需要使用python调研windows api,太麻烦,于是想到是不是可以通过共享内存的方式来实现。查...