0

最終的には、.shp で終わるファイルを持つリスト内のすべてのアイテムを表示する必要があります。したがって、各リスト項目を個別にインデックス化できる必要があります。助言がありますか?

これは私がこれまでに持っているものです:

folderPath = r'K:\geog 173\LabData'

import os
import arcpy

arcpy.env.workspace = (folderPath)
arcpy.env.overwriteOutput = True

fileList = os.listdir(folderPath)
print fileList


"""Section 2: Identify and Print the number
and names of all shapefiles in the file list:"""

numberShp = 0

shpList= list()

for fileName in fileList:
    print fileName

fileType = fileName[-4:]
print fileType

if fileType == '.shp':
    numberShp +=1
    shpList.append(fileName)

print shpList
print numberShp
4

2 に答える 2

1

リスト内包表記とを使用すると、これを非常に簡単に行うことができますstr.endswith()

shpList = [fileName for fileName in fileList if fileName.endswith('.shp')]

print shpList
print len(shpList)
于 2013-10-09T05:08:34.800 に答える
0

希望の出力形式を指定してください。そうすれば仕事は楽になる...

考えられる答えの1つは

fileList = [f for f in os.listdir('K:\geog 173\LabData') if f.endswith('.shp')]

for i,val in enumerate(fileList):
    print '%d. %s' %(i,val)  

#If u want to print the length of the list again...
print len(fileList)  
于 2013-10-09T05:23:50.243 に答える