Python 如果需要,请创建新列表

Python 如果需要,请创建新列表,python,list,Python,List,假设我有一个运行n次的while循环。每次n被7整除时,我想创建一个新表。现在我不知道“n”是什么,那么我如何才能让程序创建一个列表,并将其称为一些随机名称,如list1、list2、list3。。等 这件事我想了很久了。谢谢 编辑:说“n”是1234或99900000。希望你明白我的意思n'未知。定义您的函数(n): def yourFunction(n): i = 0 while i < n: if n % 7 == 0: cre

假设我有一个运行n次的while循环。每次n被7整除时,我想创建一个新表。现在我不知道“n”是什么,那么我如何才能让程序创建一个列表,并将其称为一些随机名称,如list1、list2、list3。。等 这件事我想了很久了。谢谢

编辑:说“n”是1234或99900000。希望你明白我的意思n'未知。

定义您的函数(n):
def yourFunction(n):
    i = 0
    while i < n:
        if n % 7 == 0:
            create_new_table()  # or whatever your new table code is
i=0 而i

虽然我不知道你所说的创建列表1、列表2、列表3等是什么意思,但也许你想创建一个本身包含列表的列表?或者用“list1”、“list2”等键和列表的值创建字典?

是,但不应创建动态变量名。更好的选择是将名称作为键存储在dict中,“创建的表”作为相应的值

n = 50
myd = {}
list_num = 1
for i in range(1, n):
    if i % 7 == 0:
        myd['list{}'.format(list_num)] = 'i = {}'.format(i)
        list_num += 1

print(myd)
现在您所要做的就是将
'i={}.format(i)
替换为对创建表的方法的调用

要访问特定的表,只需引用
myd['list}]

(例如,
'list1'
'list2'
,等等)

其中,
list1
是与
的第一个匹配,如果i%7==0:
,在您的情况下是
7


list2
将是第二个匹配项(即
14
)。

不太清楚list1、list2、list3部分的含义,但我想这给出了解决这个问题的方法:模是你的朋友

>>> n = 53;
>>> for i in range(0, n):
...   if i % 7 == 0:
...     list.append(i)
... 
>>> list
[0, 7, 14, 21, 28, 35, 42, 49]

您不能使用列表来包含新列表有什么原因吗?