Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/292.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 检查datetime的.getmodule差异_Python_Python 2.7 - Fatal编程技术网

Python 检查datetime的.getmodule差异

Python 检查datetime的.getmodule差异,python,python-2.7,Python,Python 2.7,对于python代码中定义的类,inspect.getmodule适用于对象和类型 >>> import calendar >>> c = calendar.Calendar() >>> print inspect.getmodule(c) <module 'calendar' from '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/cal

对于python代码中定义的类,inspect.getmodule适用于对象和类型

>>> import calendar
>>> c = calendar.Calendar()
>>> print inspect.getmodule(c)
<module 'calendar' from '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/calendar.pyc'>
>>> print inspect.getmodule(type(c))
<module 'calendar' from '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/calendar.pyc'>
但对于datetime,它不适用于对象:

>>> import datetime
>>> d = datetime.datetime.now()
>>> print inspect.getmodule(d)
None
>>> print inspect.getmodule(type(d))
<module 'datetime' from '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-dynload/datetime.so'>
为什么会出现这种差异?

日历模块是纯python的,而日期时间模块是一个扩展


根据文档,用于检索有关源代码的信息,因此,它对扩展模块创建的对象所能做的显然是有限的。

Calendar创建了一个对象,现在只返回时间?我不明白这是什么意思:>>>>d=datetime.datetime.now>>>reprd'datetime.datetime2014,12,3,19,8,48,279667'>>>>打印类型我能看到的唯一区别是datetime被编译成动态的。所以lib和calendar保留为.pyc