【发布时间】:2020-03-31 23:58:17
【问题描述】:
我正在开发一个烧瓶应用程序,我需要用户输入一个浮点数列表。我有一个看起来像的当前方法:
times = request.form.get("FORMNAME")
if not times:
return "Error: Please enter a list of numbers"
#print(times)
timelist = []
#print(times)
#print(list(times))
for i in range(0,len(times)):
if times[i] != ",":
timelist.append(int(times[i]))
现在这在大多数情况下都有效,但我觉得它草率且效率低下,而且当我使用小数时,它会把所有东西都扔掉。我相信我需要使用 map() 函数,但我对用法有点困惑,不知道如何将它应用到我的代码中,尽管我怀疑它会起作用。简单地说,我想从 HTML 表单中获取输入,并将其转换为值列表。 IE 我的输入类似于 1.23,2.34,3.45,它会返回一个列表,例如 [1,23,2.34,3.45]。
使用list() 将每个单独的字符变成一个列表元素,把它变成一个字符串对我没有好处。最好的方法是什么?谢谢!
【问题讨论】:
-
Python 确实有一种无需循环即可拆分字符串的方法:
map(float, times.split(','))