2015-11-03 98 views
1

我有一個字符串變量命令行(這不是我的程序的參數,我得到了它在其他地方):如何將命令行字符串轉換爲數組?

cmd_line = "app.exe --a value -b \"this is a quoted string\""; 

我怎麼能這個命令行轉換成數組?

res = ["app.exe", "--a", "value", "-b", "this is a quoted string"] 

有一個winapi函數CommandLineToArgvW。 Python中有一個等價的東西嗎?

回答

1

shlex.split()正是這麼做的:https://docs.python.org/2/library/shlex.html

+0

感謝。但是這有時會在Windows上失敗,因爲特殊字符,如'>','<'在Windows上以不同方式轉義。 – zenden2k

+0

我的不好,我忽略了你的問題是Windows特有的事實。 – NPE

相關問題