博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
得到python某个模块的路径
阅读量:5282 次
发布时间:2019-06-14

本文共 676 字,大约阅读时间需要 2 分钟。

python如何能得到一个模块的路径

由于我还是小小菜鸟,所以有时很需要知道究竟python是从哪里把一个模块导入进来的:

import imp

print imp.find_module("MySQLdb")

这个就能打印出这个模块的路径

 

>>> print imp.find_module('MySQLdb')

(None, 'C:\\Python27\\lib\\site-packages\\MySQLdb', ('', '', 5))

 

方法二:

1 import a_module
2 print a_module.__file__

上述代码将范围 .pyc 文件被加载的路径,如果需要跨平台解决方案,可用下面代码:

1 import os
2

path =os.path.dirname(amodule.__file__)

 

用__file__ 来获得脚本所在的路径是比较方便的,但这可能得到的是一个相对路径,比如在脚本test.py中写入:

#!/usr/bin/env python

print __file__

  • 按相对路径./test.py来执行,则打印得到的是相对路径,
  • 按绝对路径执行则得到的是绝对路径。

而按用户目录来执行(~/practice/test.py),则得到的也是绝对路径(~被展开)

所以为了得到绝对路径,我们需要 os.path.realpath(__file__)。

转载于:https://www.cnblogs.com/chenjianhong/archive/2012/08/31/4144971.html

你可能感兴趣的文章
sql server 2008 express 安装的时提示“重启计算机失败"
查看>>
PHP 魔术方法 __sleep __wakeup(四)
查看>>
[Uva10601]Cubes
查看>>
实验8 分析一个奇怪的程序
查看>>
CentOS yum 源的配置与使用
查看>>
atitit.软件与sql设计模式原理与本质 大总结attialx总结v6 qc26.docx
查看>>
paip.提升安全性----Des加密 java php python的实现总结
查看>>
Atitit.url 汉字中文路径 404 resin4 resin 解决 v2 q329
查看>>
JVM垃圾收集器总结
查看>>
面试题(10)之 leetcode-26
查看>>
数据结构与算法——三种基础排序算法C#实现(冒泡排序、选择排序、插入排序)...
查看>>
服务器运维管理
查看>>
memcahced部署
查看>>
Sublime Text插件
查看>>
状态栏的隐藏
查看>>
坚持不一定成功,放弃一定失败
查看>>
Java虚拟机读书笔记1——内存区域划分
查看>>
npm install -S -D -g 有什么区别
查看>>
Streak OpenCart 商城自适应主题模板 ABC-0010
查看>>
curl 要么 file_get_contents 获得授权页面的方法的必要性
查看>>