我想分析一個Python字符串(或對象),並從中提取它的「部分」。是否有可能用python解析python並提取可執行表達式?
例如,給出以下:
def foo():
xs = [x ** x
for x in range(100)
if x % 2
]
for x in xs:
print x
print 'cool'
我想可以把它解析成類似表述:
1. xs = [x ** x
for x in range(100)
if x % 2
]
2. for x in xs:
3. print x
4. print 'cool'
從谷歌上搜索的時候,我發現了inspect
模塊,可通過getsourcelines
將一個對象轉換爲其源代碼,但它完全不可知的python語法。我正在尋找可以解析出表達式的內容。
- 這是可能的嗎?
- 有沒有圖書館呢?
如果您打開要讀取的源代碼,您可以保持計數您的縮進程度,並用它來確定新語句的位置。 – RNikoopour