你能说我,如何编写一个函数,它将(一个唯一的)参数作为数字列表并返回这些数字的字符串表示列表?
例如toNum([1, 2, 3, 4])
返回["1", "2", "3", "4"]
。
答案 0 :(得分:7)
def to_num(a):
return map(str, a)
print to_num([1, 2, 3, 4])
打印
['1', '2', '3', '4']
答案 1 :(得分:6)
使用列表理解:
def stringify(input):
return [str(num) for num in input]
答案 2 :(得分:2)
阿德里安已经给了你一个优雅的答案:
def stringify(input):
return [str(num) for num in input]
这很有效,但是如果你打算只遍历表示(并且不需要因为任何其他原因而将整个列表保留在内存中),那么你应该这样做:
(str(num) for num in the_list)
括号而不是括号表示生成器表达式,就像列表一样可迭代,但在创建时不会完全展开。如果您的列表很大,这可能很重要。
答案 3 :(得分:1)
您只需在函数调用中提供参数
def to_num(*numbers):# with the * you can enter as many parameters as you want
return [str(x) for x in numbers]