从某处接收字符串,该字符串是一个params序列。 Params由空白分隔。任务将字符串解析为参数列表,所有参数都是字符串类型。解析参数字符串的最佳pythonic方式?
例如:
input : "3 45 5.5 a bc"
output : ["3","45","5.5","a","bc"]
事情变得有点复杂,如果需要传输的字符串包含空格,使用"
引用。
input: "3 45 5.5 \"This is a sentence.\" bc"
output: ["3","45","5.5","This is a sentence.","bc"]
但是如果句子碰巧包含一个引号?使用转义字符:\"
- >"
,\\
- >\
input: "3 45 5.5 \"\\\"Yes\\\\No?\\\" it said.\" bc"
output: ['3','45','5.5','"Yes\\NO?" it said.','bc']
巨蟒是否有一个优雅的方式做这个工作?
PS。我不认为正则表达式可以解决这个问题。
[csv](http://docs.python.org/library/csv.html)模块使用带有空格分隔的方言吗? –
你的最后一个输入字符串对于反斜杠有点偏离;纠正它会帮助你快速得到正确的答案。 –
“优雅的语法分析器”和“垃圾数据”并排不好 –