Tengo la siguiente lista
list1= ['Dodd-Frank', 'insurance', 'regulation']
Usé lo siguiente para eliminar el guión
new1 =[j.replace('-', ' ') for j in list1]
El resultado que obtuve
new1= ['Dodd Frank', 'insurance', 'regulation']
El resultado que idealmente quiere es
new1= ['Dodd', 'Frank', 'insurance', 'regulation']
¿Cómo puedo lograr esto de la manera más pitónica (de manera eficiente)
python
python-3.x
string
list
venkatttaknev
fuente
fuente
Respuestas:
Huellas dactilares:
fuente
lista2:
fuente
Esto se puede hacer con una única comprensión de la lista, sin necesidad de construir estructuras de datos intermedias:
con salida
fuente
De feo a hermoso
Hermoso es mejor que feo.
Pero generalmente es gratificante pasar de un código feo a un código hermoso. Entonces, primero atacaremos este problema usando bucles , y luego masajearemos la solución loop-y en una sola línea en varios pasos.
Un primer intento
Un segundo intento
Podemos hacerlo mejor dividiéndonos
sublist
en el encabezado delfor
bucle interno , para evitar la asignación justo antes del bucle.Y para el Acta Final ...
Ahora que tenemos nuestro bucle en forma de iterar y luego agregar , podemos masajearlo convenientemente en una sola línea.
fuente