簡體   English   中英

將參數傳遞給python程序

[英]Passing arguments to a python program

我有一個python程序,它接收文件路徑作為參數。

問題是,如果文件路徑具有以下字符:“%cd”,則它將“%cd”替換為當前目錄。

因此,例如:

python program.py  "C:\%af%32%cd%7f.htm"

sys.argv(在program.py中)顯示此信息:

['program.py', 'C:\\%af%32C:\\%7f.htm']

為什么會發生這種情況,如何解決?

編輯

問題是,如果我在命令行中輸入“%cd”,那么在python中,我將獲得帶有當前目錄字符串的命令行,而不是“%cd”字符

使用%%轉義%只能在批處理文件中使用,而不能在命令行上使用。 可以用雙引號轉義%

例如: python untitled0.py "C:\\\\"%"af"%"32"%"cd"%"7f.htm"

['untitled0.py', 'C:\\"%af%32%cd%7f.htm']

但這有點乏味-您必須小心\\轉義任何"

另一種選擇是將%替換為其他符號,然后將其改回到python程序中?

暫無
暫無

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

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