VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > 编程开发 > python爬虫 >
  • python爬虫之__class__ & __module__

本站最新发布   Python从入门到精通|Python基础教程
试听地址  
https://www.xin3721.com/eschool/python.html


__class__查看实例来自哪个类

 

__module__查看类来自哪个模块

 

__file__查看模块来自哪个包,也就是返回绝对路径

import sys
import os
class A:
	pass
a = A()
print(a.__class__)#查看实例属于哪个类
print(a.__class__.__module__)#查看类属于哪个模块
print(sys.modules[a.__class__.__module__])
'''sys.modules是一个全局字典,该字典是python启动后就加载在内存中。每当程序员导入新的模块,
sys.modules都将记录这些模块。字典sys.modules对于加载模块起到了缓冲的作用。当某个模块第一次
导入,字典sys.modules将自动记录该模块。当第二次再导入该模块时,python会直接到字典中查找,从
而加快了程序运行的速度
'''
print(sys.modules[a.__class__.__module__].__file__)#返回模块的绝对路径
path = sys.modules[a.__class__.__module__].__file__
#用来获取父级目录
b= os.path.join(path, os.pardir)
print(os.path.abspath(b))

相关教程