如何在一行命令列中執行多行語句
使用Python的-c選項執行單行循環時,在循環之前導入模組會導致語法錯誤。這是因為Python解釋器將程式碼區塊視為單一語句。
要解決此問題,可以採用以下幾種方法:
使用管道
要克服語法錯誤,請使用echo 命令將程式碼區塊作為一系列輸入行重定向到Python:
echo -e "import sys\nfor r in range(10): print 'rob'" | python
使用exec( )
另一種方法是使用exec() 函數將程式碼區塊作為Python 腳本執行:
python -c "exec(\"import sys\nfor r in range(10): print 'rob'\")"
擴展到多行
如果使用Pipes 或exec() 不可行,程式碼區塊可以擴展到以分號分隔的多行:
(echo "import sys" ; echo "for r in range(10): print 'rob'" ; echo "exec(\"import sys\nfor r in range(10): print 'rob'")") | python
透過利用這些技術,您可以在單一命令列中執行多行語句,同時保持Makefile 所需的結構。
免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3