當我簡單地使用命令編譯程式碼時python3 name.py
,它正在運行,但整個故事就結束了,我無法對編譯的資料執行任何操作。
我想以某種方式將我的程式編譯到解釋器,並能夠在該解釋器中試驗數據。例如,我想使用timeit(function(argument))
在我的 name.py 程式中定義和設定的函數和參數。
答案1
您正在尋找的是-i
開關。根據手冊頁:
-i When a script is passed as first argument or the -c option is
used, enter interactive mode after executing the script or the
command. It does not read the $PYTHONSTARTUP file. This can be
useful to inspect global variables or a stack trace when a
script raises an exception.
因此,如果您的腳本名稱是name.py
您需要做的就是運行:
python3 -i name.py
答案2
@daltonfury42 的答案是一種方法,但請注意,它會在進入解釋器之前先運行腳本。另一種方法是在與腳本相同的目錄中執行解釋器並導入它。
$ cat spam.py
def main(*args):
print("Called main() with args: ", args)
if __name__ == "__main__":
main("foo")
$ python3 spam.py
Called main() with args: ('foo',)
$ python3
>>> import spam
>>> spam.main("bar")
Called main() with args: ('bar',)
>>>