簡體   English   中英

如何將python參數傳遞給perl腳本?

[英]How to pass python arguments to perl script?

我正在編寫一個 python 腳本,因為我試圖調用 perl 腳本。 perl 腳本的輸入是 python 參數。

 row[i[k]]=re.sub(r"^_", "", row[i[k]])
 row[i[k]]=re.sub(r"{", "[", row[i[k]])
 row[i[k]]=re.sub(r"}", "]", row[i[k]])
 row[i[0]]=re.sub(r"^_", "", row[i[0]])
 row[i[0]]=re.sub(r"{", "[", row[i[0]])
 row[i[0]]=re.sub(r"}", "]", row[i[0]])
 cmd = "perl process_str.pl -str1 "row[i[0]]" -str2 "row[i[k]]""
 os.system(cmd)

但是我在運行 python 腳本時看到以下錯誤:

cmd = "perl process_str.pl -str1 "row[i[0]]" -str2 "row[i[k]]""
                                ^
SyntaxError: invalid syntax

可以使用以下內容:

subprocess.call([ "perl", "process_str.pl", "-str1", row[i[0]], "-str2", row[i[k]] ])

有沒有點調用shell來啟動perl時候我們可以啟動perl直接。 由於我們避免使用 shell,我們避免了必須構建 shell 命令。

暫無
暫無

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

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