擅长:python、mysql、java
<p>您可以使用一个正则表达式来查找每个方法和内容<code>(def \w+\(.*\):)((?:\n[ \t]+.+)+)</code></p>
<ul>
<li><p><code>(def \w+\(.*\):)</code>用于方法定义</p>
</li>
<li><p><code>\n[ \t]+.+</code>用于每个方法行(与前面的<code>\n</code>)</p>
</li>
</ul>
<pre><code>import json
import re
with open("function.py") as fic:
content = fic.read()
groups = re.findall(r"(def \w+\(.*\):)((?:\n[ \t]+.+)+)", content)
result = {key: [",".join(map(str.strip, val.strip().splitlines()))]
for key, val in groups}
print(json.dumps(result, indent=4))
</code></pre>