如何用逗号分割列表项并在每个分离的项上调用函数fun1

在这里,我喜欢用逗号分割list1并将其每个传递给fun1来构建另一个列表,如下面的示例中的["11","13"]

>>> def fun1(a):
...    return a+10
...
>>> list1=["1,3"]
>>> [x for y in list1 for x in y.split(",")]
['1', '3']
>>>
>>> [fun1(x) x for y in list1 for x in y.split(",")]
File "<stdin>", line 1
[fun1(x) x for y in list1 for x in y.split(",")]
         ^
SyntaxError: invalid syntax
>>>

最佳答案

为什么要额外添加x

[fun1(x) x for y in list1 for x in y.split(",")]


可:

[str(fun1(int(x))) for y in list1 for x in y.split(",")]

关于python - 如何通过分隔符拆分列表项并在每个分隔项上调用函数?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53056962/

10-12 21:43
查看更多