geologyidea.com
Viac

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

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


We are searching data for your request:

Forums and discussions:
Manuals and reference books:
Data from registers:
Wait the end of the search in all databases.
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í:

  1. Vynechajte koncové spätné lomkyrootdir
  2. Pripojte sa pomocou os.path.joinrootdirapodadresá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.