Python - Eliminar un caracter dentro de un elemento de list

 
Vista:

Eliminar un caracter dentro de un elemento de list

Publicado por Jesus B (3 intervenciones) el 08/11/2010 17:33:47
buenos dias, tengo un problema que no he podido resolver, tengo un archivo txt con un conjunto de numeros aleatorios para pasarlas por pruebas estadisticas, el formato del txt es el siguiente:

18484
3464
23
987
34
132

el problema se presenta cuando intento leer con el metodo reanlines(), el resultado en la lista sale asi:

["18484\n",'3464\n,''23\n'......]

entonces la lista me lee el salto de linea \n como un caracter y me lo agrega a cada elemento de la lista, y lo que necesito es eliminar solo el '\n' de cada caracter por ej: de '23\n' que solo quede el '23'

este es mi codigo para leer el archivo

1
2
3
4
5
print "@utor:   Jesus B"
infile = open ("numeros_corridas_1","r")
archivo=infile.readlines()
print archivo
print type(archivo)
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Eliminar un caracter dentro de un elemento de l

Publicado por Jesus B (3 intervenciones) el 08/11/2010 23:31:42
ya solucione el problema, utilice el metodo strip() para eliminar espacios en blanco, aqui el codigo

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
print "@utor: Jesus B"
infile = open ("numeros_corridas_1","r")
archivo=infile.readlines()
print archivo
a3=[]
arch3=[]
print type(archivo)
for linea in archivo:
	arch2=linea.strip() #strip elimina espacios en blanco
	x=arch2
	arch3.append(int(x))
 
print arch3
print type(arch3)
print len(arch3)
nums=[]
for i in arch3:
	nums.append(float(i))
 
print nums
print type(nums)
f2=open('leidos_de_otros.txt','w')
f2.write(str(nums))
f2.close()
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Eliminar un caracter dentro de un elemento de l

Publicado por Antonio (2 intervenciones) el 07/11/2011 23:01:32
El uso metodo readline()
no el metodo readlines() como tu lo tienes
por que el readlines te devuelve una lista
y el readline te devuelve una cadena

ejemplo
1
archivo = infile.readline().rstrip("\n")
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar