使用解釋器在終端機中編譯 python3 程式碼

使用解釋器在終端機中編譯 python3 程式碼

當我簡單地使用命令編譯程式碼時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',)
>>> 

相關內容