Autor
|
Tema: Saben como puedo quitarle esto? (Leído 3,348 veces)
|
Panic0
Desconectado
Mensajes: 218
|
Hola,estoy haciendo un sistema de registro de usuarios,y todo funciona perfecto...Pero tengo un pequeño problema Resulta que después de que se crea un nuevo usuario y se guarda dentro de un archivo,al final de la linea queda un espacio. Y lo que quiero y estoy tratando de hacer que no salga eso. Hasta ahora tengo esto def nueva_clave(nombre_archivo_txt): archivo_txt = open(nombre_archivo_txt, 'r') lineas_del_archivo = archivo_txt.readlines() total_clientes = len(lineas_del_archivo) if total_clientes > 0: for linea in range(total_clientes): el_cleinte = lineas_del_archivo[linea] cliente_leido = el_cleinte.split(' ')
ultima_clave = cliente_leido[0] ultima_clave = int(ultima_clave) + 1 ultima_clave = str(ultima_clave) archivo_txt.close() return ultima_clave else: return '1'
def cliente(nombre_archivo_txt): cliente = [] numero_cliente = nueva_clave(nombre_archivo_txt) while True: agregar = input(f'Numero de cliente actual {int(numero_cliente) - 1} Agrega uno nuevo (s/n) ? ): ') if agregar.lower() == 'n': break elif agregar.lower() == "s": archivo_txt = open(nombre_archivo_txt,"a") print(f"Numero del nuevo cliente {int(numero_cliente)}") apellido_cliente = input("Ingrese el apellido del cliente: ") nombre_cliente = input("Ingrese el nombre del cliente: ") direccion = input("Ingrese la direccion: ") saldo = input("Ingrese su saldo (ej:1.500): ")
apellido_cliente = apellido_cliente.strip(" ") nombre_cliente = nombre_cliente.strip(" ") direccion = direccion.strip(" ") cliente.append(numero_cliente) cliente.append(apellido_cliente) cliente.append(nombre_cliente) cliente.append(direccion) cliente.append(saldo)
saldo = str(saldo)
for data in cliente: archivo_txt.write(data+" ")
cliente[3] = float(saldo)
archivo_txt.write('\n') cliente = [] archivo_txt.close()
if __name__ == "__main__": nombre_archivo_txt = "prueba.txt" cliente(nombre_archivo_txt)
Esto dentro del archivo crea algo como esto: 1 lopez juan FairFax 1.900 (Y al final (en el saldo) le hace un espacio) Si me pueden dar una mano seria uf genial.
|
|
« Última modificación: 30 Enero 2021, 22:29 pm por Panic0 »
|
En línea
|
Los ataques de pánico suelen comenzar de forma súbita, sin advertencia.
|
|
|
tincopasan
Desconectado
Mensajes: 1.286
No es lo mismo conocer el camino que recorrerlo.
|
¿es un chiste? si vos lo estás generando con el código: archivo_txt.write(data + " ")
hay muchas formas de solucionar esto, una fácil sin cambiar tu lógica de programación sería: for data in cliente: if cliente.index(data) != len(cliente)-1: archivo_txt.write(data + " ") else: archivo_txt.write(data)
el tema parece ser que no estás entendiendo lo que estás haciendo.
|
|
|
En línea
|
|
|
|
Panic0
Desconectado
Mensajes: 218
|
¿es un chiste? si vos lo estás generando con el código: archivo_txt.write(data + " ")
hay muchas formas de solucionar esto, una fácil sin cambiar tu lógica de programación sería: for data in cliente: if cliente.index(data) != len(cliente)-1: archivo_txt.write(data + " ") else: archivo_txt.write(data)
el tema parece ser que no estás entendiendo lo que estás haciendo. Noup,eso no lo genera,por que tenía otro codigo exactamente igual y ese espacio simplemente no se genera... ¿es un chiste? si vos lo estás generando con el código: archivo_txt.write(data + " ")
En cuanto a tu code,lo voy a probar Gracias por la respuesta amigo Pd:y si,entiendo perfectamente lo que estaba haciendo lmao
|
|
« Última modificación: 31 Enero 2021, 02:21 am por Panic0 »
|
En línea
|
Los ataques de pánico suelen comenzar de forma súbita, sin advertencia.
|
|
|
tincopasan
Desconectado
Mensajes: 1.286
No es lo mismo conocer el camino que recorrerlo.
|
Noup,eso no lo genera,por que tenía otro codigo exactamente igual y ese espacio simplemente no se genera... 1)ahhh mira vos, ponele una a, algo así: archivo_txt.write(data + " a")
y después contame que no es esa línea lo que genera los espacios
|
|
|
En línea
|
|
|
|
Panic0
Desconectado
Mensajes: 218
|
1)ahhh mira vos, ponele una a, algo así: archivo_txt.write(data + " a")
y después contame que no es esa línea lo que genera los espacios Creo que esto me define "No existen las preguntas tontas, solo las personas tontas" En fin,tenías razón,perdón por no llevarte la palabra ;(
|
|
|
En línea
|
Los ataques de pánico suelen comenzar de forma súbita, sin advertencia.
|
|
|
Panic0
Desconectado
Mensajes: 218
|
¿es un chiste? si vos lo estás generando con el código: archivo_txt.write(data + " ")
hay muchas formas de solucionar esto, una fácil sin cambiar tu lógica de programación sería: for data in cliente: if cliente.index(data) != len(cliente)-1: archivo_txt.write(data + " ") else: archivo_txt.write(data)
el tema parece ser que no estás entendiendo lo que estás haciendo. Dude,eso si,existe la posibilidad de que me puedas explicar mas a detalle que es lo que hace cada una de estas cosas? Tengo entendido que el index te tira la primera posición de algo en una lista pero por que como argumento "data"? Despues el len devuelve la longitud de un string o tambien el número de elementos de una lista. Y por que + 1¿¿¿??? for data in cliente: if cliente.index(data) != len(cliente)-1: archivo_txt.write(data + " ") else: archivo_txt.write(data)
|
|
|
En línea
|
Los ataques de pánico suelen comenzar de forma súbita, sin advertencia.
|
|
|
tincopasan
Desconectado
Mensajes: 1.286
No es lo mismo conocer el camino que recorrerlo.
|
Tengo entendido que el index te tira la primera posición de algo en una lista en listas, tuplas y cadenas ejemplos de index: a = (1,2,3,4) #tupla b = "cadena" #cadena print(a.index(3)) print(b.index("n"))
omití listas por ser más que obvia. pero por que como argumento "data"? porque como está expresado en el ejemplo es obligatorio pasarle un elemento que se encuentre en la lista. a=(1,2,3,4) print(a.index(5))
dará un error ya que 5 no está en la lista, en este caso data está en la lista. Despues el len devuelve la longitud de un string o tambien el número de elementos de una lista. len devuelve el largo de un objeto, sea este una sequencia o una colección, por lo tanto: cadenas,tuplas,listas,diccionarios pueden ser pasados como objetos c= {1:"uno",2:"dos"} print(len(c))
etc. Y por que + 1¿¿¿??? no es "+" es "-" tu lista es de 5 elementos: [1,2,3,4,5] len devolverá 5 pero mientras sea distinta de 4 (5 -1) hará algo y cuando sea mayor otra cosa a pesar de lo que muchos se esfuerzan en repetir la documentación de python es extensa, solo hay que leerla.
|
|
|
En línea
|
|
|
|
Panic0
Desconectado
Mensajes: 218
|
en listas, tuplas y cadenas ejemplos de index: a = (1,2,3,4) #tupla b = "cadena" #cadena print(a.index(3)) print(b.index("n"))
omití listas por ser más que obvia. porque como está expresado en el ejemplo es obligatorio pasarle un elemento que se encuentre en la lista. a=(1,2,3,4) print(a.index(5))
dará un error ya que 5 no está en la lista, en este caso data está en la lista. len devuelve el largo de un objeto, sea este una sequencia o una colección, por lo tanto: cadenas,tuplas,listas,diccionarios pueden ser pasados como objetos c= {1:"uno",2:"dos"} print(len(c))
etc. no es "+" es "-" tu lista es de 5 elementos: [1,2,3,4,5] len devolverá 5 pero mientras sea distinta de 4 (5 -1) hará algo y cuando sea mayor otra cosa a pesar de lo que muchos se esfuerzan en repetir la documentación de python es extensa, solo hay que leerla. Muy bien explicado,te tengo que dar un enorme gracias por tomarte tu tiempo de responder,ya que seguro tenes cosas mas importantes que hacer en vez de estar respondiendo cosas de un chaval novato jajaja En fin,que tengas un excelente día u noche
|
|
|
En línea
|
Los ataques de pánico suelen comenzar de forma súbita, sin advertencia.
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Como puedo quitarle hacer para que un campo de un formulario sea rellenado...
Desarrollo Web
|
SaintGermain
|
1
|
3,636
|
14 Diciembre 2010, 07:21 am
por Graphixx
|
|
|
Como puedo quitarle esto a esta imagen
Diseño Gráfico
|
g-unit
|
4
|
2,190
|
5 Septiembre 2005, 17:06 pm
por Kasswed
|
|
|
cOMO pUEDO qUITARLE LA VoZ A UN tRaCK
Multimedia
|
dyan
|
1
|
6,835
|
18 Enero 2006, 20:35 pm
por Sourraund
|
|
|
como puedo quitarle el audio en ingles para poner el audio en español
Multimedia
|
meme
|
2
|
3,942
|
26 Julio 2006, 11:46 am
por Songoku
|
|
|
Saben como puedo conseguir esto?
« 1 2 »
Foro Libre
|
Panic0
|
11
|
5,035
|
13 Febrero 2021, 11:59 am
por Machacador
|
|