首页 > 解决方案 > 复制列表中的数字

问题描述

我有以下代码:

def repeatNumbers(data):
    for number in data:
        return [number[0]] * number[1]
        

print(repeatNumbers([[1, 10]]))
print(repeatNumbers([[1, 2], [2, 3]]))
print(repeatNumbers([[10, 4], [34, 6], [92, 2]]))

我希望通过列表中第二个数字的值来复制列表中的第一个数字。我只能获得以下内容:

[1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
[1, 1]
[10, 10, 10, 10]

虽然输出必须是 STRING,格式如下:

1111111111

11, 222

10101010, 343434343434, 9292

标签: pythonnested-lists

解决方案


def repeatNumbers(data):
    output_strings = []
    for numbers in data:
        output_strings.append(str(numbers[0]) * numbers[1])
    return ", ".join(output_strings)
        

print(repeatNumbers([[1, 10]]))
print(repeatNumbers([[1, 2], [2, 3]]))
print(repeatNumbers([[10, 4], [34, 6], [92, 2]]))

印刷

1111111111
11, 222
10101010, 343434343434, 9292

str(numbers[0]) * numbers[1]将中间值 ( ) 存储在列表中,而不是返回


推荐阅读