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中eval带来的潜在风险代码分析

0x00 前言 eval是Python用于执行python表达式的一个内置函数,使用eval,可以很方便的将字符串动态执行。比如下列代码: >>> eval("1...

Python单元测试简单示例

本文实例讲述了Python单元测试方法。分享给大家供大家参考,具体如下: Eric书中《Python编程从入门到实践》中的一个例子。 《Python编程从入门到实践》随书源码可至此下载:...

Windows平台Python连接sqlite3数据库的方法分析

本文实例讲述了Windows平台Python连接sqlite3数据库的方法。分享给大家供大家参考,具体如下: 之前没有接触过sqlite数据库,只是听到同事聊起这个。 有一次,手机端同事...

pandas数据清洗,排序,索引设置,数据选取方法

此教程适合有pandas基础的童鞋来看,很多知识点会一笔带过,不做详细解释 Pandas数据格式 Series DataFrame:每个column就是一个Series 基础属性shap...

Numpy之reshape()使用详解

Numpy之reshape()使用详解

如下所示: Numpy中reshape的使用方法为:numpy.reshape(a, newshape, order='C') 参数详解: 1.a: type:array_like(伪数...