Доступ к содержимому из списка для цикла? [закрыто]

Я не могу придумать решение для этого:

У меня есть этот список: shapefiles

Я хочу сделать процесс для каждого файла формы в списке, но проблема в том, что это список списков:

for i in shapefiles:
    inte_s = gpd.read_file(i) #Apparently it is wrong to just use i.
    etc..

Как я могу получить доступ к каждому из них за раз из списка?

Чтобы получить представление о том, как список, проверьте эти тесты.

shapefiles[0]
['C:\Users\user\Desktop\fffff\INTE_PST_NO_EK_WITH_ASTTOM\INTE_SHP_TESTA\INTE1.shp',
 'C:\Users\user\Desktop\fffff\INTE_PST_NO_EK_WITH_ASTTOM\INTE_SHP_TESTB\INTE1.shp']

for i in shapefiles:
    print(i)
['C:\Users\user\Desktop\fffff\INTE_PST_NO_EK_WITH_ASTTOM\INTE_SHP_TESTA\INTE1.shp', 
'C:\Users\user\Desktop\fffff\INTE_PST_NO_EK_WITH_ASTTOM\INTE_SHP_TESTB\INTE1.shp']

for i in shapefiles:
    print(i[0])
C:UsersuserDesktopfffffINTE_PST_NO_EK_WITH_ASTTOMINTE_SHP_TESTAINTE1.shp

for i in shapefiles:
    print(i[1])
C:UsersuserDesktopfffffINTE_PST_NO_EK_WITH_ASTTOMINTE_SHP_TESTBINTE1.shp

python,loops,

0

Ответов: 2


6 ов принято

У вас есть список списков, поэтому сначала сгладьте его, затем используйте свой цикл

shapefiles_flat = [file_ for sublist in shapefiles for file_ in sublist]

for i in shapefiles_flat:
      #read

2

Кажется, у вас есть список списков. Каждый элемент shapefilesсам представляет собой список из двух имен файлов. Итак, я бы рекомендовал просто вложить две петли:

for i in shapefiles:
    for j in i:
        inte_s = gpd.read_file(j)
        # etc...
питон, петли,
Похожие вопросы