簡體   English   中英

意外標記'('python腳本附近的語法錯誤

[英]syntax error near unexpected token `(' python script

我正在運行一個必須在Windows機器和linux機器之間進行交互的python代碼。

代碼在Windows上啟動,計算由服務器執行,結果返回到Windows上的文件夾中。

當我在Windows機器上運行代碼時很好,但是當它通過linux服務器傳遞時,出現以下錯誤消息:

 line 25: syntax error near unexpected token `('
 line 25: `db = MySQLdb.connect(host="192.168.1.18", # host

而代碼行是:

 db = MySQLdb.connect(host="192.168.1.18", # host

錯誤消息是什么意思以及如何解決?

謝謝

Python文件需要由Python解釋器執行。

您可以執行例如:

python script.py

其中script.py是文件名。

相反,您正在做的事情是通過Bash運行Python腳本(實際上,您得到的是一個典型的Bash錯誤)。 可能是因為您使用的是./script.py ,但您的腳本缺少正確的shebang行

#!/usr/bin/env python

確實,如果您的腳本是Python 3腳本,則應使用python3而不是python

在遠程服務器上執行python腳本時,您需要創建.sh文件,並在該.sh文件中提供python腳本的位置。 然后執行sh文件。

整個過程看起來像:

  • 使用一些編輯器(vi,echo)創建一個.sh文件,即vi any_name.sh
  • 在sh文件中。 復制粘貼

    #!/ usr / bin / env python

    python /home/..../script_folder/your_script_name.py

  • 現在保存並退出編輯器,然后輸入命令: ./any_name.sh

這是因為在服務器中執行python代碼時,它們大多只接受.sh。 在.sh文件中,我們告訴計算機使用python inerpreter執行python腳本。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM