Viaje al cerebro de Mariano Rajoy

cerebro rajoy

Hola, les hablo desde el cerebro de Mariano Rajoy en este día especial de su sexagésimo aniversario.Hoy voy a tratar de discernir para ustedes algunas de las interioridades de su pensamiento. Desde DENTRO.

Existe un estado de opinión generalizado que afirma que Rajoy es un ser absolutamente impenetrable, que filtra su pensamiento con cuentagotas y siempre en unas condiciones controladas que restringen severamente la capacidad de matización por parte de sus interlocutores. Pues bien, nuestro objetivo hoy es acceder de primera mano al esquivo pensamiento del líder, y qué mejor manera para lograrlo que acceder in situ a su materia gris y documentarnos sin intermediarios, con rigor e imparcialidad, en cada una de las circunvoluciones de su cerebro.

Rajoy niño
Rajoy niño

Guarda Mariano un recuerdo remoto de su abuelo Enrique, al que perdió cuando tenía once años. El abuelo era jurista, como su padre. En los años treinta, el abuelo Enrique fue impulsor y protagonista de la redacción del Estatuto de Autonomía de Galicia. Cuando el otro gallego ganó su guerra contra la República, el abuelo fue represaliado, aunque se le perdonó unos años más tarde. En la mente de Mariano se graba una sólida directriz: no es buena idea significarse políticamente. A quien levanta la cabeza se le acaba rebanando el cuello. La imprudencia política del abuelo fue su perdición, y las sucesivas generaciones de los Rajoy no volverían a cometer ese error.

El influjo del padre de Rajoy queda bien grabado en la mente del joven. De ese ascendente es prueba el hecho de que hoy día el anciano padre todavía convive con el presidente en La Moncloa. Rajoy padre vivió una vida sustancialmente diferente de la del abuelo: fue jurista también pero no tuvo una palabra más alta que otra en relación al régimen político en el que desarrolló su carrera profesional. El joven Rajoy hizo una regla de tres a partir de las vidas de su padre y su abuelo y sus respectivas consecuencias y llego a una conclusión diáfana: las cosas es mejor dejarlas como están. Pertenecer a una buena familia es un patrimonio intangible pero sumamente valioso, y bien utilizado se convierte en un seguro de éxito profesional.

Rajoy adolescente

Así fue como el niño Rajoy se determinó a luchar por su posición en la vida siguiendo los pasos de sus mayores, pero haciendo de la prudencia una divisa personal. No parece encontrarse dentro de este cerebro una brillantez intelectual significativa, pero sí una capacidad memorística notable. Añadiendo a esta cualidad una voluntad gris, pero precisamente constante en tanto que rutinaria, el cerebro de Rajoy albergó todo el Derecho necesario no solo para licenciarse sino también para aprobar unas oposiciones de Registrador de la Propiedad.

Cabe decir que el de Registrador es un buen oficio. No necesita ninguna virtud o brillantez personal, puesto que la clave de este oficio consiste en que se acepta como verdad oficial aquello que sus profesionales avalan. Si alguien dijera: lo que Diego Buendía dice va a misa, la gente pagaría por cada una de mis aseveraciones. Bueno, pues eso es ser un Registrador. El hecho de que por sus actuaciones profesionales haya que pagar unas buenas tasas es también una circunstancia conveniente. El padre de Rajoy debió de tenerlo claro, puesto que todos los hermanos son o Registradores o Notarios.

Pero volvamos al cerebro de Rajoy.

A modo de resumen, en esta mente se combinan la conciencia de pertenecer a una buena familia, la convicción de que la prudencia es una virtud suprema y la fuerza de voluntad, entendida en el sentido menor de apego a la rutina diaria.

Recorro este cerebro y observo un apego especial hacia las cosas cercanas, familiares y domésticas. Los recuerdos familiares, las anécdotas de los amigos de siempre y el gusto por la sencilla vida de provincias, contrastan con la alergia a los desconocidos, ya se trate de personas brillantes o estrafalarias. En su discreción, el cerebro de Rajoy discrimina enseguida a la gente de bien, y su prudencia le permite poner cruces rojas sin apenas revelarse en esos pequeños tics del lenguaje no verbal. Los que le conocen, sin embargo, se compadecen de ese interlocutor que ha sido marcado por el jefe sin haber tenido siquiera conciencia de ello.

Mariano Rajoy en 1993
Mariano Rajoy en 1993

Lamenta Rajoy haber sucumbido en ocasiones a la tentación de haber creído tener algo que decir. En los albores de su carrera política, con ventiocho años, fue elegido presidente de la Diputación de Pontevedra, y mal aconsejado por su vanidad, publicó un par de artículos en la prensa local explicando con sinceridad sus más íntimas convicciones, en particular las referidas a la virtud de pertenecer a una buena familia de cara a tener éxito en la vida.

Enternece un poco leer a un joven Rajoy pretendiéndose plumaje de intelectual en un discurso un tanto bisoño en la forma como falto de rigor en el fondo. Su fascinada incursión en el ámbito de la genética, con referencia a los venticuatro cromosomas del genoma humano, es prolija e inexacta como la descripción de los maravillosos cristales de colores que podría haber hecho un indígena tras el encuentro con los conquistadores españoles. Pero algo positivo tienen ambos artículos: son sinceros y explícitos en su exposición del pensamiento íntimo de Rajoy. Y en eso mismo radica el desagrado que Rajoy siente al evocarlos.

En el cerebro de Rajoy, a un nivel hipotalámico, se instaló una convicción de que expresarse con palabras no produce ningún beneficio. La vanidad que uno nutre con su exposición no compensa la desprotección que se deriva de darse a conocer uno mismo tal cual es a todo el mundo. Quizás por eso Rajoy no volvió a publicar nunca más. Una nebulosa discreción se añadió a su ya bien establecida prudencia.

Sin embargo, pretender una carrera política tiene el inconveniente de obligar a una acusada exposición pública. En el cerebro de Rajoy se guardan ominosas ocasiones en las que su verbo, inevitablemente, le expuso al rigor de la crítica ajena. Cuando Aznar le nombró Portavoz de su Gobierno, Mariano tragó saliva. No podía negarse porque le iba la carrera política en ello, pero se lamentó internamente puesto que el cargo le obligaba de forma explícita a exponerse, tomar partido, explicar las cosas. Ni el más anodino de los tonos en su discurso podría mitigar la evidencia de que habría preguntas y no le quedaría más remedio que contestar y, contestando, revelarse al mundo.

En esa época Rajoy capeó como pudo la necesidad de explicarse en público contrariando su íntima voluntad de silencio. Han quedado para la historia sus hilillos de plastelina del Prestige, que describían desde su mente mariana de socio de casino de provincias el terrible espectáculo de kilómetros de playas gallegas vestidas con un manto de chapapote. Y también sus declaraciones dudando sobre la existencia del cambio climático, que indirectamente hicieron famoso a su primo, el físico nuclear José Javier Brey.

Revelando esa alergia a la palabra que ha terminado materializándose en sus declaraciones en plasma, Rajoy sentenciaba en una entrevista de 2007: “Uno habla mucho y a veces se puede equivocar”. El cerebro de Rajoy, en su fuero íntimo, tenía claro que en lo sucesivo iba a ser aún más reservado, llevándonos a este extremo en el que para saber qué piensa Rajoy hay que recorrer en primera persona los pliegues de ese cerebro.

A pesar de las vicisitudes, Rajoy ha medrado hasta llegar finalmente a la Presidencia del Gobierno. La ventaja de ser presidente es que ha podido hacer realidad su sueño: el de callar. Ahora tiene toda una plantilla de subalternos que, con mejor o menor fortuna, pueden (y deben) hacer ese trabajo por él. Hecha realidad la discreción soñada, abandonados los juveniles sueños de luminaria intelectual, Rajoy ha podido dedicarse a otra de las directrices de un pensamiento trenzado desde bien pronto, a saber, la que dice que ser de buena familia es básico para tener éxito en la vida.

En base a ello, su actividad política se ha basado en favorecer a la gente de confianza. Cuando se le acusa de connivencia con el poder económico, se comete una injusticia, ya que esa abstracción es completamente inasible para Rajoy. Para Rajoy, lo que hay es gente de calidad, personas con nombre y apellidos; gente de buena familia, de un círculo contrastado donde todos se conocen y por tanto confían entre sí. El Estado no es más que un premio, un territorio que han colonizado todas estas buenas gentes y que poco a poco tratan de conquistar con la mentalidad épica de los antiguos colonos. Se cercena una riqueza pública y se convierte en un patrimonio familiar de una familia patricia. Y, en caso de necesidad, otras familias acuden en ayuda de ésta, desde las otras parcelas colonizadas del Estado. Medran y triunfan los que tienen los venticuatro genes buenos, y los demás no pueden sino aspirar a la envidia impotente.

Nada hay de incoherente en el cerebro de nuestro invitado de hoy. No es un ignorante, ni un títere del capital. Es un hombre que cree en la desigualdad, que sabe que está en el lado de los escogidos y que piensa que el país le pertenece a él y a los suyos. Y que cualquier cesión a los del otro lado sería una traición a España y una injusticia para ellos, los que merecen el país y lo nutren de dignidad. Sólo desde esa honesta convicción se podría ser tan eficiente en la destrucción de la justicia social sin sentirse carcomido por la culpabilidad.

Y esto es todo lo que les puedo contar hoy desde el cerebro de Rajoy. Un hombre satisfecho, un hombre de bien, que ha hecho su trabajo de la forma más discreta posible.

Desde el cerebro de Rajoy, Diego Buendía, para las Noticias del Mediodía.

Gracias por tu confianza
Gracias por tu confianza

Cervantes y la maldición de la bala

La batalla de Lepanto
La batalla de Lepanto (cuadro de Paolo Veronese)

El discurso sobre las letras y las armas es una larga perorata que Don Quijote pronuncia durante la cena que comparten todos los personajes que hay en ese momento en la venta. Ocupa el final del capítulo XXXVII y buena parte del XXXVIII. En él Don Quijote compara los méritos de la carrera de armas con la de las letras, expresando con vehemencia y aparato retórico su convicción de ser más alta y digna la primera que la segunda.

Para Don Quijote, el servicio de las armas no es solo una cuestión de fuerza, sino también de entendimiento, de voluntad y de valor. El hombre de armas tiene el deber de preservar la paz, requisito primero para que los hombres de letras puedan aplicarse a impartir justicia. Los estudiantes, con ser pobres y pasar hambre, siempre tienen un sitio en el que cobijarse; y, al final de sus desvelos, les espera un cargo desde el cual resarcirse de sus penurias. Al soldado, en cambio, sufriendo un rigor mayor, que implica frío, miedo y noches al raso, rara vez tiene otro premio que una herida o la muerte. Y, en el caso raro de la victoria, su premio se ha de detraer del de su señor y ser repartido con sus compañeros de armas, lo que hace esa compensación rara y escasa.

Cervantes pone en boca de Don Quijote una ardiente defensa del arte de las armas, tan apasionada que en algún momento deja de parecer la voz del personaje para convertirse inequívocamente en la del que fue un día militar. Así, explica con detalle de experto tanto la tarea del contraminado de los túneles de un enemigo que intenta vencer una muralla, con el terror de volar por los aires incluido, como la maniobra de abordaje en una batalla naval, todavía más extraña para Don Quijote. Este último escenario por fuerza habría de ser completamente ajeno al hidalgo de la Mancha, experto solo en los lances imaginarios de los libros de caballería.

Pero ése no es el caso de Miguel de Cervantes, curtido soldado que además acreditó un valiente comportamiento en la batalla de Lepanto, combatiendo a pesar de estar enfermo de calenturas y siendo herido en el pecho y la mano. Esta descripción que hace Don Quijote del abordaje no parece sino un recuerdo muy querido del propio Cervantes, que se entrega a su ensoñación a través de la voz de su personaje:

Y si éste parece pequeño peligro, veamos si le iguala o hace ventajas el de
embestirse dos galeras por las proas en mitad del mar espacioso, las cuales
enclavijadas y trabadas, no le queda al soldado más espacio del que concede
dos pies de tabla del espolón; y, con todo esto, viendo que tiene delante
de sí tantos ministros de la muerte que le amenazan cuantos cañones de
artillería se asestan de la parte contraria, que no distan de su cuerpo una
lanza, y viendo que al primer descuido de los pies iría a visitar los
profundos senos de Neptuno; y, con todo esto, con intrépido corazón,
llevado de la honra que le incita, se pone a ser blanco de tanta
arcabucería, y procura pasar por tan estrecho paso al bajel contrario.

No parece aquí que hable el lunático caballero, sino el nostálgico soldado, al que le empuja el indisimulado orgullo de haber estado presente en la mayor batalla naval de todos los tiempos. La pasión de Cervantes es tanta que descuida incluso la redacción: repite dos veces la construcción “y con todo esto”, como si hubiera escrito esta parte de corrido, con el encendido ánimo del que recuerda los momentos más brillantes de su biografía. La repentina aparición del hombre real que era Cervantes en el trabajado artefacto de la ficción que es El Quijote es para mí una muestra de que este asunto del mayor mérito del ejercicio de las armas era algo más que una convicción: era una cuestión de honor, algo muy personal dentro del alma de Cervantes. Tanto es así, que el final del discurso de Don Quijote deriva hacia un tema que necesariamente tuvo que mortificar al Cervantes soldado: la existencia de la reciente tecnología del arma de fuego, que siega por igual la vida del hombre de mérito que la del cobarde. Aquí Don Quijote maldice esas nuevas armas, que permiten que un miserable arrebate la vida al más gallardo de los caballeros:

Bien hayan aquellos
benditos siglos que carecieron de la espantable furia de aquestos
endemoniados instrumentos de la artillería, a cuyo inventor tengo para mí
que en el infierno se le está dando el premio de su diabólica invención,
con la cual dio causa que un infame y cobarde brazo quite la vida a un
valeroso caballero, y que, sin saber cómo o por dónde, en la mitad del
coraje y brío que enciende y anima a los valientes pechos, llega una
desmandada bala, disparada de quien quizá huyó y se espantó del resplandor
que hizo el fuego al disparar de la maldita máquina, y corta y acaba en un
instante los pensamientos y vida de quien la merecía gozar luengos siglos.

Es fácil imaginar a Cervantes, el soldado, haciendo suyas esas palabras y resintiéndolas en el peso muerto de la mano que le quedó inútil a causa de un arcabuzazo. Aquella maldita bala que le seccionó un nervio y le impidió volver a usar la mano durante el resto de su vida. La impotencia de ver que ni el más valiente pecho es inmune a la desmandada bala, de la que no se sabe ni cómo ni por donde viene, mortifica profundamente al soldado y a su sentido del honor.

Después de esta disgresión del personaje, vuelve el Don Quijote que nos resulta familiar: aunque lamenta haberse hecho caballero andante en esta época en que puede morir por la furia de la pólvora y el plomo, reconoce que su misión, aunque más difícil, tiene un lado bueno:

Pero haga el
cielo lo que fuere servido, que tanto seré más estimado, si salgo con lo
que pretendo, cuanto a mayores peligros me he puesto que se pusieron los
caballeros andantes de los pasados siglos.

Es decir, que su mérito de caballero, si es que tiene el premio de la victoria, le hará mayor que a sus predecesores, que no tuvieron que enfrentarse a esa nueva tecnología de muerte que son las armas de fuego. Aquí tenemos de nuevo al animoso caballero, dispuesto a continuar su misión sin acobardarse por las renovadas dificultades que su época le presenta.

Me encanta Don Quijote.

El Ministerio del Tiempo: una lectura política

ministerio del tiempoMe gusta la serie de televisión de El Ministerio del Tiempo. Es una serie que combina el género fantástico con el de época, usando los viajes en el tiempo sin enredarse con la paradoja temporal. Además tiene tono humorístico, y está muy bien hecha. El viaje a los momentos estelares de nuestra historia es ameno y entretenido. Y eso es un mérito, en un género donde cuesta poco ponerse mayestático y solemne en perjuicio de la pura diversión.

O sea, que queda claro que creo que El Ministerio del Tiempo es una gran serie, al menos en sus tres primeros episodios, que son los que se han emitido cuando escribo estas líneas. Y es grande, aparte de por las cosas citadas hasta aquí, porque da pie para reflexionar a partir de la materia prima que proporciona.

Uno de esos pensamientos que me da vueltas es la propaganda última que la serie puede contener, interpretada en términos políticos.

No descubro nada nuevo si digo que las manifestaciones deportivas se usan como vehículo de difusión de discursos políticos. Y es así aunque es lugar común decir que la política no debe mezclarse con el deporte. Los éxitos deportivos de un país se usan políticamente como elementos de exaltación nacional. La televisión enfatiza esos éxitos deportivos como una especie de certificado de mérito del país en su conjunto. Gracias a ellos la gente se identifica con su bandera y con su himno, y se sienten parte de algo que merece la pena. Y los países que son punteros en el ámbito deportivo usan su hegemonía como un símbolo de una superioridad de índole más general, que muy a menudo es verdadera.

Las manifestaciones artísticas también incluyen mensajes políticos. El cine americano ha hecho más por la colonización cultural de los pueblos del mundo que sus propios ejércitos. Nos han hecho admirar su democracia y sus instituciones, los valores de su cultura, sin dejar de recordarnos la superioridad de los marines americanos en todo tipo de hazañas bélicas. Y nos han mostrado con crudeza qué les ocurre a aquellos pueblos que eran un obstáculo a la expansión de su modo de vida, como aquellos infortunados indios de tantas películas del Oeste.

Así que, visto que todas esas manifestaciones humanas pueden, y de hecho suelen impregnarse de propaganda, me puse a pensar en qué podía resultar propagandística mi serie favorita de televisión. Mi punto de vista acabó resumido así, en un tuit:

Para mi sorpresa me replicó Paco López Barrio, guionista de la serie:

Pensé un rato sobre esto, porque a priori parece un argumento razonable. Pero si lo piensas bien, esa frase es profundamente pesimista. Un optimista podría pensar lo contrario, que nuestra historia podría haber sido mucho mejor con solo un par de retoques aquí o allá. La única virtud – llamémosle así – de nuestra historia es que ya la conocemos, y en ese sentido sí que podría darle la razón al subsecretario.

Y aquí vengo a la argumentación en términos políticos que prometí en el titular de este texto. Durante los últimos años hemos tenido un gobierno muy de derechas. Pero no es solo el gobierno: una omnipresente propaganda neoliberal ha conseguido calar incluso en personas que, por su circunstancia social, no deberían ser fans del liberalismo.

Estos propagandistas nos han vendido la certeza de que nada puede ser mejor de lo que ha llegado a ser, con sus vicios y sus virtudes. Es eso. Nada podemos hacer. El mercado funciona automáticamente: donde pueda optar entre beneficio y justicia, se decanta por beneficio. La pobreza existe, lamentablemente. Y así con todo.

En la serie, un ministerio entero se preocupa de mantener, fijar y dar esplendor (al modo de la Real Academia de la Lengua) a la historia que ha hecho de nuestra nación lo que es hoy, y eso a pesar de que lo que es hoy España no es en absoluto algo para andar tirando cohetes. Pero es igual; “podría ser mucho peor”, y eso es razón suficiente para luchar contra viento y marea contra cualquier cambio.

Quizás en otros tiempos, con otras ideas y utopías campando por las mentes de la gente, esta serie se podría plantear al revés: qué sería esta España si este o aquel acontecimiento que inclinaron el rumbo de la historia hubieran podido evitarse o desenvolverse de alguna otra manera. Imaginar otras Españas hipotéticas; mejores, si puede ser, ya que nos ponemos a imaginar. Imaginar una España sin la Inquisición, sin Fernando VII, sin la guerra de 1936. Todo un desafío para un grupo brillante de guionistas como los de El Ministerio del Tiempo.

Seguramente esta otra versión de El Ministerio del Tiempo no hubiera obtenido el visto bueno para llegar a buen término. Los que nos gobiernan prefieren que nada cambie, y, mejor aún incluso, que nadie albergue la esperanza de que algún cambio sea posible. Y solo faltaría que una serie de televisión incluyera propaganda de sociedades utópicas e hipotéticas, diferentes de todo esto que tanto trabajo ha costado grabar en la conciencia de la gente.

Pero bueno, nada esto es responsabilidad del brillante equipo que ha creado El Ministerio del Tiempo, al cual no quisiera dejar de felicitar otra vez desde aquí. Ya dije que me encanta la serie, ese rato de ensoñarse en una historia fantástica y tan bien trenzada. Lo que no me gusta es el signo de los tiempos, pero ¿a quién puede importarle eso?

Reordenar columnas de texto con una sola sentencia Python

Hace días que no hago elucubraciones en Python, así que hoy voy a enseñaros algo que hice ayer por pura necesidad. Se trata de tomar un texto que contiene columnas separadas por tabuladores y transformarlo cambiando de orden unas columnas y suprimiendo otras.

Tengo una hoja Excel donde llevo mis cuentas, y que relleno copiando directamente los asientos desde la página web de mi banco. Las columnas del Excel coinciden con el orden de la web, y por eso basta la copia directa. Pero ayer hacía dos meses que no hacía cuentas (efecto colateral de EQ17KT), y tuve que recurrir al histórico del banco. Y en el histórico, qué mala suerte, las columnas son distintas.

En las dos imágenes siguientes se ve más claro:

datos recientes
Formato de los datos recientes
Formato de los datos históricos
Formato de los datos históricos

Para trabajar con más comodidad, tomé los datos copiados y los guardé en el fichero VISA.CSV. Nada impide insertarlos directamente como texto multilinea en Python, usando la sintaxis de triple comillas:

[code language=”python”]
texto = """
Este es un texto
multilínea
copiado directamente
"""
[/code]

Abrir y leer un fichero en Python es sencillo:

[code language=”python”]
f = open("visa.csv", "r")
texto = f.read()
f.close()
[/code]

Otra forma es usando un bloque with, que hace lo mismo pero evitando tener que cerrar el fichero de forma explícita:

[code language=”python”]
with open("visa.csv", "r") as f:
texto = f.read()
[/code]

El texto contiene líneas de texto y otras en blanco:

[code]
09/08/2014 1234 1234 1234 5678 CAPRABO – 17 RAMBLA MARIN 44,81 EUR

12/08/2014 1234 1234 1234 5678 BSM ZONA BLAVA 1,54 EUR

13/08/2014 1234 1234 1234 5678 CAPRABO – 17 RAMBLA MARIN 34,34 EUR

16/08/2014 1234 1234 1234 5678 CAPRABO – 17 RAMBLA MARIN 31,02 EUR

03/08/2014 1234 1234 1234 5678 PARKEON 7,40 EUR

18/08/2014 1234 1234 1234 5678 CAPRABO – 17 RAMBLA MARIN 28,82 EUR

[/code]

Lo que queremos hacer con estos datos es:

  1. Trocear el texto en líneas.
  2. Eliminar las líneas en blanco.
  3. Trocear los campos de cada línea.
  4. Seleccionar los campos deseados.
  5. Volver a crear la línea.
  6. Volver a crear el texto entero.

Vamos allá paso a paso.

Trocear un texto en líneas

Esto es muy fácil en Python con la función split(). A esta función le pasamos un parámetro que es la cadena que queremos usar como separador, y nos devuelve una lista con todos los trozos encontrados.

[code language=”python”]
lineas = texto.split("n")
print(lineas)
## [‘línea 1’, ‘línea 2’, …]
[/code]

Eliminar líneas en blanco

La forma convencional sería un bucle que creara una nueva lísta que contuviera sólo las líneas con contenido. En Python quedaría así:

[code language=”python”]
lineas_datos = [] ## Inicializar lista vacía
for linea in lineas:
if linea:
lineas_datos.append(linea)
[/code]

Pero Python tiene un mecanismo compacto para generar listas, que convierte el código anterior en una sola línea:

[code language=”python”]
lineas_datos = [linea.strip() for linea in lineas if linea]
[/code]

Esta sintaxis contiene el bucle (for linea in lineas), la expresión condicional (if linea) y la expresión a aplicar a cada elemento antes de incorporarlo a la lista (linea.strip()). La función strip() la añado porque algunas líneas vienen con espacios en blanco al principio y/o al final y así las limpio de paso.

Trocear los campos de cada línea.

Puesto que tenemos una lista con cada una de las líneas, tendríamos que hacer un bucle línea por línea aplicando a cada una la función split(“t”), que nos trocearía usando el tabulador como división.

Podría volver a usar la forma larga del apartado anterior, pero ya puedes imaginar que preferiré la compacta de nuevo:

[code language=”python”]
lineas_campos = [linea.strip(‘t’) for linea in lineas_datos]
[/code]

Fíjate que la expresión linea.strip(‘t’) va a generar una lista de campos, y el generador compacto de listas una lista con un elemento por fila. Así, tendremos una estructura de lista de listas:

[code language=”python”]
## [[campo1.1, campo1.2, …], [campo2.1, campo2.2, …], …]
[/code]

Seleccionar los campos deseados.

Usaremos otro generador compacto para recorrer la lista anterior. El elemento del bucle será en este caso la lista interior, la de los campos. Lo que haremos será crear una lista nueva con los elementos deseados y en el orden correcto:

[code language=”python”]
lista_campos = [[lista[2], lista[0], lista[3][:-5]] for lista in lineas_campos]
[/code]

El tercer elemento lista[3][:-5] no es más que una cadena de texto de la que quito los 5 últimos caracteres. La sintaxis para trocear un texto en Python es texto_cortado = texto[origen:final], donde origen y final son índices numéricos, pero estos parámetros pueden ser negativos o no ponerse y Python es capaz de imaginarse qué quiso uno decir en cada caso.

Llegados aquí ya tenemos una lista de listas, conteniendo éstas últimas los campos deseados y en el orden correcto. Nos queda revertir proceso, convirtiendo las listas en cadenas con separadores (primero con tabuladores y después con retornos de carro).

Volver a crear la línea.

Para esto tenemos la función inversa de split(), join(). La sintaxis es un poco particular:

[code language=”python”]
print("***".join(["hola", "mundo", "cruel"])
## hola***mundo***cruel
[/code]

La cadena a intercalar es a la que se aplica el método, y la lista de cadenas a concatenar aparece como parámetro. Aplicaremos el método a cada sublista de lista_campos, con lo que la lista volverá a tener cadenas (las nuevas líneas).

[code language=”python”]
lista_lineas = ["t".join(campos) for campos in lista_campos]
[/code]

Volver a crear el texto entero.

Esto es fácil de adivinar: volveremos a aplicar join() a la lista de líneas:

[code language=”python”]
texto_nuevo = "n".join(lista_lineas)
[/code]

Verás que como aquí sólo hay una lista que se convierte en texto, no se usa el constructor de listas.

Todo de una tacada

En plan lucimiento, se pueden integrar todos los constructores de listas en una sola secuencia. Aquí está el código, por si alguien quiere comprobar que funciona. Los comentarios ilustran la secuencia que se sigue a la hora de ejecutar el código.

[code language=”python”]
with open("visa.csv", "r") as f: ## 0. Aquí se abre el fichero de texto
print( "n".join( ## 12. Aquí se unen todas las líneas de la lista en el texto completo y se imprime
[‘t’.join(L4) ## 11. Aquí volvemos a unir los campos de L4 con tabuladores (saldrá lista de filas)
for L4 ## 10. L4 es cada una de esas nuevas listas de campos en 9.
in [[L3[2], L3[0], L3[3][:-5]] ## 9. Esto es una nueva lista de campos, con selecc.reordenada de la original L3

## El tercer elemento es la descripción
## La fecha es el primero
## El cuarto es el importe, quitando los últimos 5 caracteres (" EUR")

for L3 ## 8. L3 es cada lista de campos obtenida de la línea L2
in [L2.split("t") ## 7. Trocear cada línea L2 por tabs
for L2 ## 6. L2 es cada línea destripada de blancos (excluidas las vacías)
in [L.strip() ## 5. Quitar blancos por delante (y detrás)
for L ## 3. Para cada línea
in f.read(). ## 1. Leer el texto desde el fichero
split("n") ## 2. Trocear la cadena en líneas
if len(L) > 0] ## 4. Quitar lineas vacías
]
]
]
))
[/code]