我希望能够在开发过程中直接导航到python源代码。
例如,如果我在项目Foo.Bar()
中的方法上按F4将我带到Foo类中的function def __init__(self)
,PyCharm会打开该模块并将我放在定义方法的行上。但是,当我按string.format(fmt_str)
上的F4时,我想被带到
class Formatter:
def format(*args, **kwargs):
if not args:
raise TypeError("descriptor 'format' of 'Formatter' object "
"needs an argument")
self, *args = args # allow the "self" keyword be passed
try:
format_string, *args = args # allow the "format_string" keyword be passed
except ValueError:
if 'format_string' in kwargs:
format_string = kwargs.pop('format_string')
import warnings
warnings.warn("Passing 'format_string' as keyword argument is "
"deprecated", DeprecationWarning, stacklevel=2)
else:
raise TypeError("format() missing 1 required positional "
"argument: 'format_string'") from None
return self.vformat(format_string, args, kwargs)
在/Lib/string.py的Python源代码中
我不知道string.format()的源代码在哪里,所以如果没有这个Formatter.format(),请不要告诉我,我要做的是学习像那和string.format()的实现细节。这只是我想要做的一个例子,以便提高我对初级水平的Python的理解。
答案 0 :(得分:3)
您尝试导航的功能在C中实现.PyCharm不支持导航到CPython源代码中标准库函数的源代码。