Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/15.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_Python 3.x_List_Python 2.7 - Fatal编程技术网

python将一个列表生成多个列表

python将一个列表生成多个列表,python,python-3.x,list,python-2.7,Python,Python 3.x,List,Python 2.7,在PYTHON中,我有一个列表,我想从中创建一个多个列表,对于每个项目,我想让他创建一个列表,其中包含其他项目 我最初的名单: cities=['Chevalley'、'A.Gharmoul 1'、'El Madania']以下代码将帮助您创建所需的结果列表: items = ['Chevalley', 'A.Gharmoul 1', 'El Madania'] res = [[items[i],items[j]] for i in range(len(items)) for j in ran

PYTHON
中,我有一个
列表
,我想从中创建一个多个列表,对于每个项目,我想让他创建一个列表,其中包含其他项目

我最初的名单:


cities=['Chevalley'、'A.Gharmoul 1'、'El Madania']
以下代码将帮助您创建所需的结果列表:

items = ['Chevalley', 'A.Gharmoul 1', 'El Madania']
res = [[items[i],items[j]] for i in range(len(items)) for j in range(i+1, len(items))]
print(res)

下面的代码将帮助您创建要查找的结果列表:

items = ['Chevalley', 'A.Gharmoul 1', 'El Madania']
res = [[items[i],items[j]] for i in range(len(items)) for j in range(i+1, len(items))]
print(res)

虽然这是不一样的,它是非常接近你正在寻找的

import itertools
a = ['Chevalley', 'A.Gharmoul 1', 'El Madania']
result = list(itertools.combinations(a,2)) # number is the amount of items you want in the resultant tuple

结果将在列表中包含长度为
2
的元组。

虽然这并不相同,但它与您要查找的非常接近

import itertools
a = ['Chevalley', 'A.Gharmoul 1', 'El Madania']
result = list(itertools.combinations(a,2)) # number is the amount of items you want in the resultant tuple
result_list = []
for i in ['Chevalley', 'A.Gharmoul 1', 'El Madania']:
    for j in ['Chevalley', 'A.Gharmoul 1', 'El Madania']:
        if i != j:
            result_list.append([i, j])
结果将在列表中包含长度
2
的元组

result_list = []
for i in ['Chevalley', 'A.Gharmoul 1', 'El Madania']:
    for j in ['Chevalley', 'A.Gharmoul 1', 'El Madania']:
        if i != j:
            result_list.append([i, j])
它应该迭代每一个可能的配对,同时忽略自身的配对元素

它应该迭代所有可能的配对,同时忽略自身的配对元素。

下面应该这样做:

l  = ['Chevalley', 'A.Gharmoul 1', 'El Madania']
n = [[l[i], l[j]] for i in range(0, len(l) - 1, 1) for j in range(i + 1, len(l), 1)]
n
将等同于:

[['Chevalley', 'A.Gharmoul 1'],
 ['Chevalley', 'El Madania'],
 ['A.Gharmoul 1', 'El Madania']]
下面应该这样做:

l  = ['Chevalley', 'A.Gharmoul 1', 'El Madania']
n = [[l[i], l[j]] for i in range(0, len(l) - 1, 1) for j in range(i + 1, len(l), 1)]
n
将等同于:

[['Chevalley', 'A.Gharmoul 1'],
 ['Chevalley', 'El Madania'],
 ['A.Gharmoul 1', 'El Madania']]

嵌套for循环完成您的工作

list1 =['Chevalley', 'A.Gharmoul 1', 'El Madania']

output =[]

for i in range(len(list1)):
 for j in range(i+1,len(list1)):
  output.append([list1[i],list1[j]]) 

print(output)#[['Chevalley', 'A.Gharmoul 1'],['Chevalley','El Madania',['A.Gharmoul 1', 'El Madania']]

嵌套for循环完成您的工作

list1 =['Chevalley', 'A.Gharmoul 1', 'El Madania']

output =[]

for i in range(len(list1)):
 for j in range(i+1,len(list1)):
  output.append([list1[i],list1[j]]) 

print(output)#[['Chevalley', 'A.Gharmoul 1'],['Chevalley','El Madania',['A.Gharmoul 1', 'El Madania']]

您可以使用itertools并将输出元组转换为列表:

import itertools

new = [ list(el) for el in itertools.combinations(['Chevalley', 'A.Gharmoul 1', 'El Madania'], 2) ]

您可以使用itertools并将输出元组转换为列表:

import itertools

new = [ list(el) for el in itertools.combinations(['Chevalley', 'A.Gharmoul 1', 'El Madania'], 2) ]

itertools可能会帮助你。看这篇文档这回答了你的问题吗@ilyesBourouba让我知道,你觉得我的答案怎么样。现在我打算删除我的答案,这些答案对这个问题没有用处(没有答案),itertools可能会帮你解决。看这篇文档这回答了你的问题吗@ilyesBourouba让我知道,你觉得我的答案怎么样。现在我打算删除对问题没有用处的答案(无答案)