2016-02-12 98 views
-3

我想使用檢查得到python打印的源代碼,但它是拋出錯誤。有人可以告訴我如何獲取python2.7打印語句的源代碼。如何獲取python打印函數的源代碼?

inspect.getsourcefile(print) 
--------------------------------------------------------------------------- 
TypeError         Traceback (most recent call last) 
<ipython-input-85-6158f5314751> in <module>() 
----> 1 inspect.getsourcefile(print) 

/usr/lib/python3.4/inspect.py in getsourcefile(object) 
    569  Return None if no way can be identified to get the source. 
    570  """ 
--> 571  filename = getfile(object) 
    572  all_bytecode_suffixes = importlib.machinery.DEBUG_BYTECODE_SUFFIXES[:] 
    573  all_bytecode_suffixes += importlib.machinery.OPTIMIZED_BYTECODE_SUFFIXES[:] 

/usr/lib/python3.4/inspect.py in getfile(object) 
    534   return object.co_filename 
    535  raise TypeError('{!r} is not a module, class, method, ' 
--> 536      'function, traceback, frame, or code object'.format(object)) 
    537 
    538 ModuleInfo = namedtuple('ModuleInfo', 'name suffix mode module_type') 

TypeError: <built-in function print> is not a module, class, method, function, traceback, frame, or code object 

In [86]: inspect.getsourcefile(builtin.print) 
--------------------------------------------------------------------------- 
NameError         Traceback (most recent call last) 
<ipython-input-86-2d1fb60aac58> in <module>() 
----> 1 inspect.getsourcefile(builtin.print) 

NameError: name 'builtin' is not defined 
+0

https://www.python.org/downloads/source/你可以在那裏找到所有問題的來源 – Altoyyr

回答