我要做的是拿一个给定的清单:
numlist_1: [3, 5, 4, 2, 5, 5]
并使用此函数将其转换为字符串
def to_string(my_list, sep=', '):
newstring = ''
count = 0
for string in my_list:
if (length(my_list)-1) == count:
newstring += string
else:
newstring += string + sep
count += 1
return newstring
将所需输出显示为:
to_string Test
List is: 3, 5, 4, 2, 5, 5
List is: 3 - 5 - 4 - 2 - 5 - 5
然而,我收到一个错误,说明了 TypeError:+:'int'和'str'
的不支持的操作数类型我认为这是因为其中一份印刷文件是
print('List is:', list_function.to_string(num_list1, sep=' - '))
并且分隔符与函数中给出的分隔符不同,但我希望能够同时包含','和' - '分隔符,因为我有另一个列表,它使用与','分隔符相同的函数。
我该如何解决这个问题?
答案 0 :(得分:4)
你可以试试这个
def to_string(my_list, sep=', '):
newstring = ''
count = 0
for string in my_list:
if (length(my_list)-1) == count:
newstring += str(string)
else:
newstring += str(string) + sep
count += 1
return newstring
然而,这是一个非常简洁的方式:
sep = ', '
sep.join(map(str,my_list))
答案 1 :(得分:3)
另一种选择:
sep = ', '
output_str = sep.join([str(item) for item in my_list])
答案 2 :(得分:0)
解决此问题的另一种方法
L = [1,2,3,4,-5]
sep = ""
print(sep.join(list(map(str,L))))
希望这会有所帮助