假設我有一個文件如何在內存中編輯加載的模塊?
# func.py:
def function():
print 'Hello'
print 'World'
和我在同一目錄的另一個文件
# load.py:
import sys
import inspect
from func import function
我現在可以通過訪問函數的源:
code = inspect.getsourcelines(sys.modules['function'])
反正是有我可以編輯打印功能的行數:
「你好,有世界」而不只是「你好世界」?
我想通過編輯功能在內存中完成這一切。我目前正在通過讀取源文件並編輯它來完成相同的效果,並將其寫入臨時文件,並導入臨時文件,但我想完全避免使用外部文件。
爲什麼在這個世界上你想要這樣做? – XORcist
自我修改程序在50年代左右死亡。你想要的是一個接受論證的函數。 – Bakuriu
最終目標是什麼?可能有更好的方法來做到這一點。 – ninMonkey