对浮点数使用多个输入?

Using multiple inputs for floats?

正在编写需要构建边界框的应用程序。通过获取所需框的西南角和东北角来构建框。应用程序需要格式为 xx.xxx、xx.xxx.

的代码

例如从这个开始:

southwest_corner = float(raw_input("Enter the SW corner values: "))

但它不接受它有逗号和第二个值的事实。 (记得xx.xxx,xx.xxx)我也试过把它当作字符串而不是浮点数,但还是不行。

如何让用户输入我想要的格式并正确地接受它?

我通过调用 map 并在输入行的末尾添加 .split 解决了这个问题:

southwest_corner = map(float, raw_input("Define the SW corner of your box: ").split(','))

这让我能够正确输入我期望的格式 xx.xxxx,xx.xxxx。

map 在项目集合中应用了该函数(在本例中为 float)。我通过调用 .split(',') 将逗号分隔输入,使其成为一个字符串。所以输入被拆分成一个字符串,然后 map 将该输入映射到 float.

这个帖子很有帮助:Python 2.7 - Invalid Literal Errors