生成随机数并使用python将其合并到较旧的列表中

时间:2016-12-19 09:47:27

标签: python list for-comprehension

我有一份清单。我正在尝试生成一个与旧列表不同的新列表,并将其合并到旧列表中。如果生成的数字已存在于较旧的列表中,则给出相应的错误,否则合并两个列表,即旧列表+新列表,。

我写了一个代码,它给了我合并列表但不是合适的结果。 示例代码如下:

test.py

import random
def testfunc():
    old_list = [12, 23, 34, 45, 56]
    new_list = []
    for i in range(10, 15):
        randomnumber = int(random.randint(10, 100))
        x = new_list.append(randomnumber)
        old_list.append(x)
    print(old_list)

if __name__ == "__main__":
    testfunc()

输出

[12, 23, 34, 45, 56, None, None, None, None, None]

请帮我解决这个问题并告诉我检查旧列表和更新列表的适当条件。 在此先感谢。

1 个答案:

答案 0 :(得分:1)

list.append()函数不返回新列表,只是将项添加到列表中。因此,当您执行x = new_list.append(randomnumber)时,您实际上是将x设置为None

要解决此问题,请执行new_list.append(randomnumber)。这样你有两个列表,旧的和新的。然后,您可以稍后进行测试,以查看列表中的任何数字是否匹配。