我有一些代碼在python的工作,但不幸的是超級慢。 #python的人建議我可以通過分析器運行代碼,以查看代碼花費最多時間的行和函數。ipython profiler
我想要配置文件的python源代碼從STDIN中讀取。但是由於輸入很大,我將輸入編譯爲一個文件,以便我可以簡單地將它重定向到shell中的python代碼。因此,在殼,我發出命令..
cat input | python pythonsource.py
的問題是,當我嘗試運行IPython的剖析,我似乎無法找到一種方法來重定向輸入到Python代碼。在IPython的殼,我試過,
run -p -l 1.0 pythonsource.py input (didn't work. simply waits at STDIN for input)
run -p -l 1.0 pythonsource.py << input (didn't work)
run -p -l 1.0 cat input | python pythonsource.py (didn't work.)
我不知道該怎麼辦,我可以讓IPython中探查命令重定向輸入STDIN爲pythonsource從閱讀。有人能告訴我如何解決這個問題嗎?或者我完全錯了嗎?也許還有其他更清晰,更智能的分析python代碼的方法?
也許我接下來要問的應該是另一個問題的一部分..但我想知道ipython在ipython探查器的某些輸出中引用「原始調用」時的含義是什麼?
謝謝。
據我所知,在管道標準輸入是IPython中的'%run'不兼容。你將不得不手動運行分析:http://docs.python.org/library/profile.html#instant-user-s-manual – 2012-02-19 14:14:23