¿Alguien puede encontrar una solución más hermosa y más de Python?Encontrar espacios dobles en una cadena - Python
Estoy recorriendo algunas líneas de texto en un archivo, para verificar si cumplen con ciertos criterios. Por alguna razón, se decidió que los separadores internos en la línea son '', es decir, espacio doble.
¿Cómo verifico una cadena de texto para verificar que todos los separadores tengan exactamente dos espacios? Los espacios al final de la línea no son un problema, ya que inicialmente la línea es .strip() 'ed.
He escrito esto, y funciona, pero es feo. El código se mostrará a algunos Python novato, así que estoy buscando una solución más corto, más clara y más bella ...
ll = ["53.80 64-66-04.630N 52-16-15.355W 25-JUN-1993:16:48:34.00 S10293.. 2",
" 53.80 64-66-04.630N 52-16-15.355W 25-JUN-1993:16:48:34.00 S10293.. 2",
"53.80 64-66-04.630N 52-16-15.355W 25-JUN-1993:16:48:34.00 S10293.. 2",
" 53.80 64-66-04.630N 52-16-15.355W 25-JUN-1993:16:48:34.00 S10293.. 2",
"53.80 64-66-04.630N 52-16-15.355W 25-JUN-1993:16:48:34.00 S10293.. 2 ",
"53.80 64-66-04.630N 52-16-15.355W 25-JUN-1993:16:48:34.00 S10293.. 2 ",
"53.80 64-66-04.630N 52-16-15.355W 25-JUN-1993:16:48:34.00 S10293.. 2"]
for ln in ll:
l = ln.strip()
bolDS = True
for n in range(len(l)-1):
if (n>0 and l[n]==' ' and not ((l[n]==l[n+1])^(l[n]==l[n-1]))):
bolDS = False
print "|"+l+"|",bolDS
Niza pequeña comparación. Simplemente eliminaría toda la parte superior y haría que la edición sea tu respuesta real – jdi
@jdi - Buen punto. Siempre quiero dejar eso porque siento que le dedico un poco de trabajo, pero tienes razón en que si no aborda la pregunta, debería eliminarse. – mgilson
+1 respuesta limpia. Ayudaría al próximo chico (por ejemplo, mi yo futuro) con un 'def is_doublespace_separated():' precediéndolo. – msw