1

我有两个元素的父列表

P= ["E:\\GIS_DOCUMENT\\BCAS_Map\\BCAS_All.gdb\\BD_Admin" , "E:\\GIS_DOCUMENT\\BCAS_Map\\BCAS_All.gdb\\BCAS_BD_Infrastructure"]

但第一个元素有另一个列表:

Cld1 = ['BGD_4_new_district', 'BGD_3_old_district', 'BGD_2_division', 'BGD_1_all', 'BGD_5_Upazilla', 'BGD_4_old_district', 'BGD_6_Union_court', 'BGD_6_Union', 'BD_exposed_coastal_area','BD_drought', 'BGD_1_River', 'BGD_1_River_detail', 'BD_international_bnd', 'BGD_1_River_1', 'BGD_7_Mauza', 'test', 'BGD_5_UpazillaAnno', 'BGD_4_new_districtAnno', 'BGD_4_new_districtAnno2']

第二个元素有另一个列表:

Cld2 = ['BD_Health_Infrastructures_1', 'BD_Railway_Establishments_1', 'BGD_roads_1']

现在我想加入 P 和(Cld1 和 Cld2),即 P+Cld1 和 P+Cld2 来制作 os 路径,它(P+Cld1 和 P+Cld2)将保存在数组“My_Full_Path”中,例如“E:\GIS_DOCUMENT \BCAS_Map\BCAS_All.gdb\BD_Admin \BGD_4_new_district”是“My_Full_Path”列表的一个元素

怎么做

提前致谢

4

2 回答 2

2

利用os.path.join

nez_Cld1 = [os.path.join(P[0], i) for i in Cld1] 
nez_Cld2 = [os.path.join(P[1], i) for i in Cld2]
于 2013-06-03T07:09:50.747 回答
1

如果我正确理解了您的问题,那么我想您需要这个:

import os
import pprint
P= ["E:\\GIS_DOCUMENT\\BCAS_Map\\BCAS_All.gdb\\BD_Admin" , "E:\\GIS_DOCUMENT\\BCAS_Map\\BCAS_All.gdb\\BCAS_BD_Infrastructure"]
Cld1 = ['BGD_4_new_district', 'BGD_3_old_district', 'BGD_2_division', 'BGD_1_all', 'BGD_5_Upazilla', 'BGD_4_old_district', 'BGD_6_Union_court', 'BGD_6_Union', 'BD_exposed_coastal_area','BD_drought', 'BGD_1_River', 'BGD_1_River_detail', 'BD_international_bnd', 'BGD_1_River_1', 'BGD_7_Mauza', 'test', 'BGD_5_UpazillaAnno', 'BGD_4_new_districtAnno', 'BGD_4_new_districtAnno2']
Cld2 = ['BD_Health_Infrastructures_1', 'BD_Railway_Establishments_1', 'BGD_roads_1']

lis1 = [os.path.join(x, y) for x in P for y in Cld1]
lis2 = [os.path.join(x, y) for x in P for y in Cld2]

My_Full_Path = lis1 + lis2

pprint.pprint(My_Full_Path)

输出:

['E:\\GIS_DOCUMENT\\BCAS_Map\\BCAS_All.gdb\\BD_Admin\\BGD_4_new_district',
 'E:\\GIS_DOCUMENT\\BCAS_Map\\BCAS_All.gdb\\BD_Admin\\BGD_3_old_district',
 'E:\\GIS_DOCUMENT\\BCAS_Map\\BCAS_All.gdb\\BD_Admin\\BGD_2_division',
 'E:\\GIS_DOCUMENT\\BCAS_Map\\BCAS_All.gdb\\BD_Admin\\BGD_1_all',
 'E:\\GIS_DOCUMENT\\BCAS_Map\\BCAS_All.gdb\\BD_Admin\\BGD_5_Upazilla',
 'E:\\GIS_DOCUMENT\\BCAS_Map\\BCAS_All.gdb\\BD_Admin\\BGD_4_old_district',
 'E:\\GIS_DOCUMENT\\BCAS_Map\\BCAS_All.gdb\\BD_Admin\\BGD_6_Union_court',
 'E:\\GIS_DOCUMENT\\BCAS_Map\\BCAS_All.gdb\\BD_Admin\\BGD_6_Union',
 'E:\\GIS_DOCUMENT\\BCAS_Map\\BCAS_All.gdb\\BD_Admin\\BD_exposed_coastal_area',
 'E:\\GIS_DOCUMENT\\BCAS_Map\\BCAS_All.gdb\\BD_Admin\\BD_drought',
 'E:\\GIS_DOCUMENT\\BCAS_Map\\BCAS_All.gdb\\BD_Admin\\BGD_1_River',
 'E:\\GIS_DOCUMENT\\BCAS_Map\\BCAS_All.gdb\\BD_Admin\\BGD_1_River_detail',
 'E:\\GIS_DOCUMENT\\BCAS_Map\\BCAS_All.gdb\\BD_Admin\\BD_international_bnd',
 'E:\\GIS_DOCUMENT\\BCAS_Map\\BCAS_All.gdb\\BD_Admin\\BGD_1_River_1',
 'E:\\GIS_DOCUMENT\\BCAS_Map\\BCAS_All.gdb\\BD_Admin\\BGD_7_Mauza',
 'E:\\GIS_DOCUMENT\\BCAS_Map\\BCAS_All.gdb\\BD_Admin\\test',
 'E:\\GIS_DOCUMENT\\BCAS_Map\\BCAS_All.gdb\\BD_Admin\\BGD_5_UpazillaAnno',
 'E:\\GIS_DOCUMENT\\BCAS_Map\\BCAS_All.gdb\\BD_Admin\\BGD_4_new_districtAn
  ...
  ...
于 2013-06-03T07:13:00.370 回答