Previesť názvy tried funkcií na malé písmená?

We are searching data for your request:
Upon completion, a link will appear to access the found materials.
Jednoducho sa pokúšam prejsť prvou bezprostrednou sadou priečinkov v adresári, potom GDB a nakoniec triedami funkcií, teraz však chápem „CHYBA 000840: Hodnota nie je údajovým prvkom. Parametre nie sú platné "pre náhodné názvy tried funkcií, ktoré sa prevádzajú. Napríklad skonvertuje jednu triedu funkcií s názvom" S_WTR_LN "na malé písmená, ale zobrazí chybu pri triede funkcií s názvom" S_GEN_STRUCT ". K tomu dôjde, keď dosiahne riadok 25, na prvom arcpy.Rename_management.
AKTUALIZÁCIA: Nejako tam bol zámok v oblúkovom katalógu. Po resetovaní všetkého to fungovalo -_- Konečný pracovný kód je uvedený nižšie ako referencia.
import arcpy import os rootdir = r ' server test ARCHIVE ' for subdir in os.listdir (rootdir): path = rootdir + subdir arcpy.env.workspace = path databases = arcpy.ListWorkspaces ("*", „FileGDB“) pre databázu v databázach: arcpy.env.workspace = databáza fcList = arcpy.ListFeatureClasses () pre fcName v fcList: if fcName.islower (): pass else: fcLCName = fcName.lower () arcpy.Rename_management (fcName) („TEMPNAME“, „FeatureClass“) arcpy.Rename_management („TEMPNAME“, fcLCName, „FeatureClass“)
Nemôžem to otestovať, ale upravil som niekoľko vecí:
- Vynechajte koncové spätné lomky
rootdir
- Pripojte sa pomocou os.path.join
rootdir
apodadresár
import arcpy import os rootdir = r ' server test ARCHIVE' for subdir in os.listdir (rootdir): path = os.path.join (rootdir, subdir) arcpy.env.workspace = path databases = arcpy.ListWorkspaces ("*", "FileGDB") pre databázu v databázach: arcpy.env.workspace = database fcList = arcpy.ListFeatureClasses () pre fcName v fcList: if fcName.islower (): pass else: fcLCName = fcName.lower () arcpy.Rename_management (fcName, 'TEMPNAME', 'FeatureClass') arcpy.Rename_management ('TEMPNAME', fcLCName, 'FeatureClass')
Pozrite sa, či to funguje. Nie som si celkom istý, čo iné by mohlo spôsobiť chybu, ktorú ste uviedli.