Más

Reemplazo de múltiples palabras usando la calculadora de campo en la tabla de atributos python

Reemplazo de múltiples palabras usando la calculadora de campo en la tabla de atributos python


Necesito reemplazar varias palabras con una palabra en un campo a la vez en un script.

Ejemplo en mi LettersField necesito reemplazar todas las "Aa" y todas las "Bb" y todas las "Cc" por "Rr".

Soy consciente del reemplazo fxn y no puedo usar la herramienta de búsqueda y reemplazo, que sería MUCHO más fácil, pero tengo que crear un script de Python.

¿Cómo puedo hacer esto? ¿Cuál sería el bloque de código y el 'LettersField ='?


Si planeas hacer esto con frecuencia, es mejor que lo hagas como una función para poder reutilizarlo.

  1. Abra la calculadora de campo
  2. Haga clic en la casilla de verificación Mostrar bloque de código
  3. Ingrese el bloque de código que se incluye a continuación
  4. Puede hacer clic en el botón Guardar para guardar el código y cargarlo más tarde con el botón Cargar

Aquí hay una captura de pantalla como ejemplo.

Es el mismo resultado al final, pero puede ser un poco más flexible.

Código de secuencia de comandos de prelógica

def rep_field (in_fld, rep_value): objetivos = ['Aa', 'Bb', 'Cc', 'Dd'] para el destino en los objetivos: in_fld = in_fld.replace (targ, rep_value) return in_fld

Ver el vídeo: Cómo modificar la estructura de una tabla de atributos en QGIS