Python 如何解析有问题的字符串

Python 如何解析有问题的字符串,python,parsing,Python,Parsing,我正在开发一个Scratch-Python处理程序,基本上可以在解析专家的帮助下完成:) 我正在努力处理不太正确的输入(我的Scratch程序员可能只有7岁,所以我的hander应该接收这样的字符串) "motor1" "12.5" "motor2" 80 "sonar8" "Pin11On" 但当Scratch在变量/名称值周围加上空格后,它们很容易就这样结束了 "motor 1" "12.345 " "motor2" 80 "sonar 8" "Pin 11 On" 我要找的是上面的代

我正在开发一个Scratch-Python处理程序,基本上可以在解析专家的帮助下完成:)

我正在努力处理不太正确的输入(我的Scratch程序员可能只有7岁,所以我的hander应该接收这样的字符串)

"motor1" "12.5" "motor2" 80 "sonar8" "Pin11On" 
但当Scratch在变量/名称值周围加上空格后,它们很容易就这样结束了

"motor 1" "12.345 " "motor2" 80 "sonar 8" "Pin 11 On"
我要找的是上面的代码并返回一个新字符串

motor1 12.345 motor2 80 sonar8 Pin11On
收到的任何建议:)

西蒙

In [52]: text = '"motor 1" "12.345 " "motor2" 80 "sonar 8" "Pin 11 On"'

In [53]: import shlex

In [54]: shlex.split(text)
Out[54]: ['motor 1', '12.345 ', 'motor2', '80', 'sonar 8', 'Pin 11 On']

In [55]: [item.replace(' ','') for item in shlex.split(text)]
Out[55]: ['motor1', '12.345', 'motor2', '80', 'sonar8', 'Pin11On']

In [56]: ' '.join([item.replace(' ','') for item in shlex.split(text)])
Out[56]: 'motor1 12.345 motor2 80 sonar8 Pin11On'