Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python列表理解-生成多个数据_Python_List_List Comprehension - Fatal编程技术网

Python列表理解-生成多个数据

Python列表理解-生成多个数据,python,list,list-comprehension,Python,List,List Comprehension,因此,以上是我的尝试(Generisanjevor2(内加里斯塔,m,n) 我想做的是下一步: 我想生成N个数组,并用random.choice函数生成的字符串填充它们,它们仍然必须是listaslova中的字符串) 也许让我们假设N=3(N表示数组的数量)和M=4(M表示数组的长度),我应该得到这样的结果(数组中的数据不一定相同,因为它们当然是随机生成的): 但我得到的结果如下: [A,C,D,E] ([A,C,E,D] [E,C,B,A] [E,D,D,A]) p.S如果我尝试注释的那一行

因此,以上是我的尝试(Generisanjevor2(内加里斯塔,m,n)

我想做的是下一步: 我想生成N个数组,并用random.choice函数生成的字符串填充它们,它们仍然必须是listaslova中的字符串)
也许让我们假设N=3(N表示数组的数量)和M=4(M表示数组的长度),我应该得到这样的结果(数组中的数据不一定相同,因为它们当然是随机生成的):

但我得到的结果如下:

[A,C,D,E]
([A,C,E,D] [E,C,B,A] [E,D,D,A])

p.S如果我尝试注释的那一行,我会得到一个错误

您注释行中的错误是因为您有一个额外的
]
。和
random.choice
应该是
random.choices

但是,您也不应该在调用
random.choice()
的过程中添加其他列表。它已经返回了一个列表

[A,D,E,C]
[[B],[D],[E]]

注释行中的错误是因为您有一个额外的
]
。和
random.choice
应该是
random.choices

但是,您也不应该在调用
random.choice()
的过程中添加其他列表。它已经返回了一个列表

[A,D,E,C]
[[B],[D],[E]]

正如@Barmar所说,您确实有一个额外的
[]
。 您的函数应该如下所示:

def generisanjevol2(nekalista, m,n):
    obj = [random.choices(nekalista,k=m) for i in range(n)]
    return obj

正如@Barmar所说,您确实有一个额外的
[]
。 您的函数应该如下所示:

def generisanjevol2(nekalista, m,n):
    obj = [random.choices(nekalista,k=m) for i in range(n)]
    return obj

在注释行中,我得到random.choice(nekalista,k=m)的错误。。。它如下所示:
TypeError:choice()得到了一个意外的关键字参数“k”
它应该是
random.choices
,就像在
generisanjivol1
中调用
random.choices()
一样,正如我在答案中所展示的。你看到我在你发表评论后编辑了答案了吗?写一个函数,比较列表并返回它们的相似程度。然后您可以使用排序(zip(lista2,lista2),key=lambda pair:yourFunction(*pair))。在注释行中,我得到随机选择的错误(nekalista,k=m)。。。它如下所示:
TypeError:choice()得到了一个意外的关键字参数“k”
它应该是
random.choices
,就像在
generisanjivol1
中调用
random.choices()
一样,正如我在答案中所展示的。你看到我在你发表评论后编辑了答案了吗?写一个函数,比较列表并返回它们的相似程度。然后可以使用排序(zip(lista2,lista2),key=lambda-pair:yourFunction(*pair))。