Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/346.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

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 - Fatal编程技术网

在python中对列表进行排序

在python中对列表进行排序,python,list,Python,List,以下是使用csv解析后我的列表的外观: list=[['1131', '01/06/15', 'PROFI ROM FOOD SRL', '290.7'], ['1131', '', '', ''], ['2024194PJ', '01/08/15', 'SOCIETATEA NATIONALA DE', '2,088.17'], ['2024194PJ', '', 'RADIOCOMUNICATII SA', '']] (这是一个数据示例,实际列表将更大)

以下是使用csv解析后我的列表的外观:

list=[['1131', '01/06/15', 'PROFI ROM FOOD SRL', '290.7'],
         ['1131', '', '', ''], ['2024194PJ', '01/08/15', 
        'SOCIETATEA NATIONALA DE', '2,088.17'], ['2024194PJ', '', 'RADIOCOMUNICATII SA', '']]
(这是一个数据示例,实际列表将更大) 我将分析该列表:

for a in list:
   for x in a:
      if ....:
         anotherlist.append(x)
我想要这个输出:

anotherlist=[['1131', '01/06/15', 'PROFI ROM FOOD SRL', '290.7'],
['2024194PJ', '01/08/15', 'SOCIETATEA NATIONALA DE RADIOCOMUNICATII
SA', '2,088.17']]
我想将2rd索引值附加到前面的每个列表中,并删除该特定列表,因此

[['2024194PJ', '01/08/15', 'SOCIETATEA NATIONALA DE', 
 '2,088.17'], ['2024194PJ', '', 'RADIOCOMUNICATII SA', '']]
是这样吗

[['2024194PJ', '01/08/15', 
'SOCIETATEA NATIONALA DE RADIOCOMUNICATII SA', '2,088.17']]
同时也摆脱了这种格式

['1131', '', '', '']

但是我不知道怎么做。

假设列表始终遵循您提供的模式:

list2 = []
for i in range(len(list)/2):
    list2 += [[list[i*2][0],
               list[i*2][1],
               list[i*2][2] + ' ' + list[i*2+1][2],
               list[i*2][3]]]
说明:
我们从一个空列表(列表2)开始:

然后,for循环遍历整个列表,但只查看第二个元素:

for i in range(len(list)/2):
在每个步骤中,它都会向列表2中添加一个新条目:

list2 += 
这个新条目是两个列表元素的组合,列表[i*2]和列表[i*2+1]:

         [[list[i*2][0],
           list[i*2][1],
           list[i*2][2] + ' ' + list[i*2+1][2],
           list[i*2][3]]]

太好了,你能解释一下你在那里做了什么吗?非常感谢@隆美尔我在答案中添加了一些细节。我得到了这一点,但是循环怎么会忽略我不需要的列表呢?谢谢这些列表不会被忽略,但因为它们的第三个元素是空字符串(“”),添加它们不会改变任何事情。例如:“苹果”+“派”=“苹果派”,“苹果”+“=“苹果”
         [[list[i*2][0],
           list[i*2][1],
           list[i*2][2] + ' ' + list[i*2+1][2],
           list[i*2][3]]]