Python - Ayuda

 
Vista:

Ayuda

Publicado por francisco (4 intervenciones) el 07/12/2021 06:41:44
Mi codigo tiene un par de cosas que no se como arreglar el primero es que el \n' sea invisible cuando se guarde en el .txt y que no aparezca el x07, tambien no se como hacer para que cuando pongas en meses trancurridos un numeor mayor a 6 salga que no es apto y si es menor a este salga que es apto y que el numero de asientos disponibles se pueda actualizar sin tener que cambiar todos los datos que se coloquen.


def buses():

buses1= []
codigo = int(input("Ingrese el codigo del bus: "))
modelo = (input("ingrese el modelo: "))
capacidad_total = int(input("ingrese la capacidad total del bus: "))
tickets_vendidos = int(input("ingrese la cantidad de tickets vendidos: "))
meses_transcurridos = int(input("ingrese la cantidad de meses transcurridos desde su mantenimiento: "))
chofer = (input("chofer asignado: "))
ubicacion =(input("indicar si el busta esta en Lima o Trujillo: "))
Hora_sal=(input("indicar la hora de salida del bus:"))
capacidad_reducida = (capacidad_total)*0.5
asientos_disponible= (capacidad_reducida)-(tickets_vendidos)


buses1.append([f'codigo:{codigo}\modelo: {modelo},\capacidad total:{capacidad_total},\capacidad reducida: {capacidad_reducida},\asientos disponibles: {asientos_disponible},\Chofer: {chofer},\ Ubicacion: {ubicacion},\Hora de salida: {Hora_sal}\n'])

return str(buses1)


fichero=open('buses.txt','w')
fichero.write('registro de buses\n')
fichero.close()
caso=int(input('Ingrese 1 para ingresar los buses: '))
ingreso=int(input(f'¿cuantos buses quiere ingresar {caso}? '))

if caso==1:

for i in range(ingreso):

fichero=open('buses.txt','a')

fichero.write(buses())

fichero.write('\n')

fichero.close()
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
sin imagen de perfil
Val: 2.808
Oro
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

Ayuda

Publicado por tincopasan (1082 intervenciones) el 07/12/2021 09:31:25
la verdad es que hay muchas líneas que se pueden mejorar o corregir, pero como no viene al caso, solo modificaré las que mencionas y alguna otra para que veas otras forma de escribir lo mismo.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#-*- coding: utf  -8 -*-
def buses():
    buses1= []
    codigo = int(input("Ingrese el codigo del bus: "))
    modelo = (input("ingrese el modelo: "))
    capacidad_total = int(input("ingrese la capacidad total del bus: "))
    tickets_vendidos = int(input("ingrese la cantidad de tickets vendidos: "))
    meses_transcurridos = int(input("ingrese la cantidad de meses transcurridos desde su mantenimiento: "))
    if meses_transcurridos > 6:estado="NO APTO"
    else: estado = "APTO"
    chofer = (input("chofer asignado: "))
    ubicacion =(input("indicar si el busta esta en Lima o Trujillo: "))
    Hora_sal=(input("indicar la hora de salida del bus:"))
    capacidad_reducida = (capacidad_total)*0.5
    asientos_disponible= (capacidad_reducida)-(tickets_vendidos)
    buses1.append([f'codigo:{codigo}\modelo: {modelo},\estado:{estado}, \capacidad total:{capacidad_total},\capacidad reducida: {capacidad_reducida},\\asientos disponibles: {asientos_disponible},\Chofer: {chofer},\ Ubicacion: {ubicacion},\Hora de salida: {Hora_sal}']) #al usar las barras python las interpreta como caracteres especiales en algunos casos y hay que usar doble barra para evitarlo.
    return str(buses1)
 
fichero=open('buses.txt','w')
fichero.write('Registro de buses\n')
fichero.close()
caso=int(input('Ingrese 1 para ingresar los buses: '))
ingreso=int(input(f'¿cuántos buses quiere ingresar {caso}? '))
 
if caso==1:
    with open("buses.txt","a") as fichero: #usar with con archivos es mejor
        for i in range(ingreso):
            fichero.write(buses())
            print(f"Bus {i+1} agregado") #la agregué solo para se sepa que cambiaste de bus
            fichero.write('\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