Bienvenido, Invitado
Tienes que registrarte para poder participar en nuestro foro.

Nombre de usuario/Email:
  

Contraseña
  





Buscar en los foros

(Búsqueda avanzada)

Últimos temas
[tkinter] Importar al pro...
Foro: Aplicaciones de escritorio
Último mensaje por: Francisco
15-08-2019, 12:04 AM
» Respuestas: 16
» Vistas: 2.576
Necesito ayuda con este p...
Foro: General
Último mensaje por: Hbert16
13-08-2019, 12:15 AM
» Respuestas: 0
» Vistas: 62
Capturar eventos mouse.
Foro: General
Último mensaje por: SofiaRodriguez
07-08-2019, 04:28 AM
» Respuestas: 2
» Vistas: 1.326
Librería o programa recon...
Foro: General
Último mensaje por: SofiaRodriguez
07-08-2019, 04:26 AM
» Respuestas: 6
» Vistas: 1.105
PermissionError: [WinErro...
Foro: Windows
Último mensaje por: Francisco
03-08-2019, 03:11 PM
» Respuestas: 1
» Vistas: 70
Ayuda con programa de If/...
Foro: General
Último mensaje por: Asche
02-08-2019, 09:02 PM
» Respuestas: 2
» Vistas: 760
Filtrado de fechas en tki...
Foro: Aplicaciones de escritorio
Último mensaje por: Johnny_LS
02-08-2019, 03:06 PM
» Respuestas: 4
» Vistas: 191
pythom Visualizar conteni...
Foro: Web
Último mensaje por: Francisco
02-08-2019, 11:22 AM
» Respuestas: 1
» Vistas: 69
Scrollbar horizontal no f...
Foro: Aplicaciones de escritorio
Último mensaje por: Johnny_LS
16-07-2019, 03:52 PM
» Respuestas: 2
» Vistas: 231
Identificar widges/variab...
Foro: Aplicaciones de escritorio
Último mensaje por: Myszowor
11-07-2019, 07:10 AM
» Respuestas: 4
» Vistas: 384

 
Question Necesito ayuda con este programa
Enviado por: Hbert16 - 13-08-2019, 12:15 AM - Foro: General - Sin respuestas

Hola amigos, recientemente estoy atascado en un ejercicio de python versión 3.7 el cual tiene como enunciado lo siguiente:
"Escriba un programa que permita crear la cantidad de listas de palabras que el usuario desee y que, a continuación, le pregunte al usuario si desea modificar alguna lista que él haya creado".

Hasta ahora lo tengo casi resuelto solo me falta el final, que es precisamente lo que necesito saber como escribirlo en código.

Código:
# 1 Programa que crea varias listas
lista_final = []
cdl = int(input("¿Cuantas listas deseas crear?: "))
for cl in range(cdl):
    lista = []
    cpl = int(input(f"¿Cuantas palabras deseas que tenga la lista {cl + 1}?: "))
    for cp in range(cpl):
        palabras_lista = input(f"Dime la palabra {cp + 1} para la lista {cl + 1}: ")
        lista.append(palabras_lista)
    lista_final.append(lista)
for cl in range(cdl):
    print(f"La lista numero {cl + 1} es {lista_final[cl]}")

# 2 Menú que le pregunta al usuario si desea modificar alguna lista

print("¿Deseas modificar alguna lista?")
print("""1) Si\n2) No""")
opcion = input("")
if opcion == "1":
    print("¿Cual lista deseas modificar?: ")
    for cl in range(cdl):
        print(f"La lista numero {cl + 1} integrada por {lista_final[cl]}")
    opcioncdl = input("")

Al ejecutarlo obtengo lo siguiente:

Cita:
¿Cuantas listas deseas crear?: 2


¿Cuantas palabras deseas que tenga la lista 1?: 2

Dime la palabra 1 para la lista 1: Pollo

Dime la palabra 2 para la lista 1: Pescado

¿Cuantas palabras deseas que tenga la lista 2?: 2

Dime la palabra 1 para la lista 2: Carne

Dime la palabra 2 para la lista 2: Puerco

La lista numero 1 es ['Pollo', 'Pescado']

La lista numero 2 es ['Carne', 'Puerco']

¿Deseas modificar alguna lista?

1) Si

2) No

1

¿Cual lista deseas modificar?:

La lista numero 1 integrada por ['Pollo', 'Pescado']

La lista numero 2 integrada por ['Carne', 'Puerco']

Vale, amigos a partir de aquí lo que quiero saber es como hacer para que el usuario independientemente de la lista que escoja esta se modifique. Tambien recuerden que es un programa que creara listas segun el usuario desee en este caso yo lo he ejecutado para dos listas. Entonces, necesito saber que codigo debo escribir para que el usuario pueda seleccionar que lista desea modificar porque imagine que el usuario introduzca 10 o 15 listas en lugar de 2. Necesito ayuda urgente por favor.

Indagando con el código pude completar el ejercicio y que el programa funcionara al 100%, dejo el codigo por aqui en dado caso que alguien tenga dudas sobre como crear un programa similar de varias listas y que este se encargue de modificar una o no en caso de que el usuario lo desee.

Código:
# 1 Programa que crea varias listas
lista_final = []
cdl = int(input("¿Cuantas listas deseas crear?: "))
for cl in range(cdl):
    lista = []
    cpl = int(input(f"¿Cuantas palabras deseas que tenga la lista {cl + 1}?: "))
    for cp in range(cpl):
        palabras_lista = input(f"Dime la palabra {cp + 1} para la lista {cl + 1}: ")
        lista.append(palabras_lista)
    lista_final.append(lista)
for cl in range(cdl):
    print(f"La lista numero {cl + 1} es {lista_final[cl]}")

# 2 Menú que le pregunta al usuario si desea modificar alguna lista

print("¿Deseas modificar alguna lista?")
print("""1) Si\n2) No""")
opcion = input("> ")
if opcion == "1":
    print("¿Cual lista deseas modificar?: ")
    for cl in range(cdl):
        print(f"La lista numero {cl + 1} integrada por {lista_final[cl]}")
    modificar_lista = int(input("> "))
    if modificar_lista > 0:
        elemento_lista = int(input("Introduce en numero la posición de la palabra que quieres modificar?: "))
        lista_final[modificar_lista - 1][elemento_lista - 1] = input("Escribe tu nueva palabra: ")
        print("La lista ha sido cambiada con exito")
    for cl in range(cdl):
        print(f"La lista numero {cl + 1} es {lista_final[cl]}")
else:
    print("Gracias por usar el programa")
    input("Presione la tecla enter para salir")

Imprimir

  PermissionError: [WinError 5] Acceso denegado:
Enviado por: Asche - 02-08-2019, 08:43 PM - Foro: Windows - Respuestas (1)

Hola muy buenas tardes, decidí crear este Tema para pedir ayuda con un problema que no he podido solucionar, lo que sucede es que he intentado mover un script python de un directorio a otro :



shutil.move('Ensayo.py', 'C://Program Files//1p')

Ya he importado los módulos correspondientes, el archivo que deseo importar es .py  pero cada vez que lo intento me aparece este error


Traceback (most recent call last):
  File "C:\Program Files (x86)\Python37-32\lib\shutil.py", line 557, in move
    os.rename(src, real_dst)
PermissionError: [WinError 5] Acceso denegado: 'Ensayo.py' -> 'C://Program Files//123\\Ensayo.py'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Users\Asche\Documents\Proyectos Python\Ensayo.py", line 24, in <module>
    shutil.move('Ensayo.py', 'C://Program Files//123')
  File "C:\Program Files (x86)\Python37-32\lib\shutil.py", line 571, in move
    copy_function(src, real_dst)
  File "C:\Program Files (x86)\Python37-32\lib\shutil.py", line 257, in copy2
    copyfile(src, dst, follow_symlinks=follow_symlinks)
  File "C:\Program Files (x86)\Python37-32\lib\shutil.py", line 121, in copyfile
    with open(dst, 'wb') as fdst:
PermissionError: [Errno 13] Permission denied: 'C://Program Files//123\\Ensayo.py'
>>> 

Ya se que windows no le esta permitiendo a mi script realizar operaciones con carpetas dentro de C:/  lo que necesito es una forma en la que mi script pida permisos de administrador para así poder seguir con la operación, o alguna otra forma de mover mi script a una carpeta dentro de C:/ sin que me salte ese error?

Imprimir

  pythom Visualizar contenido de una tabla en flask
Enviado por: joshuaf - 31-07-2019, 06:42 PM - Foro: Web - Respuestas (1)

Hola a todos soy nuevo en el foro y soy nuevo el mundo de la programacion con python comense con la programacion web con flask, bueno el caso es que estoy intentando que los valores de una tabla en una base de datos aparescan en una lista de seleccion pero de entrada ya lo he intendado de varias  formas y no me funciona aqui les envio el codigo.

codigo py

  1. @app.route('/test',methods=['POST', 'GET'])
  2. def Consulta():
  3.    con = pyodbc.connect('DRIVER={SQL Server}; SERVER=AUS_COMPUTO02\SQLEXPRESS; DATABASE=WEBSERVICE; Trusted_Connection = yes;')
  4.    cur = con.cursor()
  5.    cur.execute("SELECT *FROM PROVEEDOR WHERE DECRIPCION = '{}'".format('CHEF'))
  6.    posts = [dict(ID_PROVEEDOR=row[0], DECRIPCION=row[1]) for row in cur.fetchall()]
  7.    con.close()
  8.    return render_template('consulta.html')


html
  1. <from name="PROVEEDOR" action="url_for('test')" method="POST">
  2.  {% for p in posts %}
  3.    <button type="submit">
  4. <select name="PROVEEDOR">
  5. <option value="">CHEF</option>
  6. <option value="INDUVECA">INDUVECA</option>
  7. <select>
  8.  
  9.  
  10.     <strong>PROVEEDOR:</strong> {{ p.ID_PROVEEDOR }}
  11.      <strong>PROVEEDOR:</strong> {{ p.DESCRIPCION }}
  12. {% endfor %}
  13. </form>


segundo metodo


python
  1. @app.route('/t', methods=['POST', 'GET'])
  2. def test1():
  3.    con = pyodbc.connect('DRIVER={SQL Server}; SERVER=AUS_COMPUTO02\SQLEXPRESS; DATABASE=WEBSERVICE; Trusted_Connection = yes;')
  4.    con.row_fatory = sql.Row()
  5.    cur = con.cursor()
  6.    cur.execute("SELECT *FROM PROVEEDOR WERHE ID_PROVEEDOR = {?}")
  7.  
  8.    rows = cur.fetchall();
  9.    return  rows


html
  1. <form action="url_for('t')" method='POST' >
  2.         Dia
  3.        <input list="week" type="text" name="dia" />
  4.        {% for row in rows %}
  5.        <datalist id="week" name="">
  6.        <option value="{{ row[ID_PROVEEDOR] }}" >
  7.        <option value="{{ row[ID_PROVEEDOR] }}" >
  8.        <option value="{{ row[ID_PROVEEDOR] }}" >
  9.        <option value="{{ row[ID_PROVEEDOR] }}" >
  10.        <option value="{{ row[ID_PROVEEDOR] }}" >
  11.        <option value="{{ row[ID_PROVEEDOR] }}" >
  12.        </datalist>
  13.        {% endfor %}
  14.        </br>

Imprimir

  Filtrado de fechas en tkinter de python con sqlite
Enviado por: Johnny_LS - 29-07-2019, 01:29 AM - Foro: Aplicaciones de escritorio - Respuestas (4)

Buen dia amigos!!!! Quiero hacer un filtrado de fechas en python lo que hice es tomar la fecha con la ayuda de datatime como fecha de estudio (segun ese dia se paga el estudio) y se guarda en la base de datos con ese formato (tipo datetime) la idea es hacer un corte de las ventas de cada mes, y lo que hice fue usar la sentencia:

"SELECT * FROM paciente WHERE fecha_de_estudio BETWEEN 09, Jul, 2019 AND 23, Jul, 2019"

En este caso si se hace el filtrado y se obtiene el rango de fechas esperado, entonces coloqué un Entry de Tkinter para hacerlo ya con variables y no logro obtener el resultado esperado.

Label(self.tab2, text = 'Fecha de inicio: ', bg = 'gray').grid(row = 1, column = 0, sticky = W + E)
self.fecha_inicial = Entry(self.tab2, width = 10)
self.fecha_inicial.focus()
self.fecha_inicial.grid(row = 1, column = 1, pady = 10, sticky = W)

Label(self.tab2, text = 'Fecha final: ', bg = 'gray',).grid(row = 2, column = 0, sticky = W + E)
self.fecha_final = Entry(self.tab2, width = 10)
self.fecha_final.grid(row = 2, column = 1, pady = 10, sticky = W )

Button(self.tab2, text = 'Seleccionar mes', command = self.get_mes).grid(row = 2, column = 2, pady = 10, padx = 10, sticky = W + E ) 


def run_query(self, query, parameters = ()): 

    with sqlite3.connect(self.db_lab) as conn:
        cursor = conn.cursor()
        result = cursor.execute(query, parameters)
        conn.commit()
    return result
    # Consulta de datos
    query = ("SELECT * FROM paciente WHERE fecha_de_estudio BETWEEN ? AND ?", self.fecha_i.date(), self.fecha_f.date())

    db_rows = self.run_query(query)

def get_mes(self):
    self.fecha_i = datetime.strptime(self.fecha_inicial.get(), '%d, %b, %Y')
    self.fecha_f = datetime.strptime(self.fecha_final.get(), '%d, %b, %Y')    

    records = self.tree2.get_children()

    for element in records:
        self.tree2.delete(element)

    query = ("SELECT * FROM paciente WHERE fecha_de_estudio BETWEEN ? AND ?", self.fecha_i.date(), self.fecha_f.date())

    db_rows = self.run_query(query)

    for row in db_rows:
    self.tree2.insert('', 0, text = row[0], values = (row[0], row[1], row[2], row[3], row[4], row[5], row[6], row[7], row[8], row[9], row[10], row[11], row[12], row[13], row[14], row[15], row[16], row[17], row[18], row[19]))

Me pueden apoyar en este problema que tengo por favor, no logro encontrar mi error y una pregunta adicional a que se refiere este error: 

ValueError: operation parameter must be str (me aparecia cuando modificaba la busqueda)

muchas gracias!!!!

Imprimir

  Scrollbar horizontal no funciona
Enviado por: Johnny_LS - 15-07-2019, 05:22 PM - Foro: Aplicaciones de escritorio - Respuestas (2)

Buen dia!!!

Estoy haciendo una aplicacion de escritorio donde coloco un scrollbar horizontal el problema es que no funciona, utilice un programa prueba y funciona pero cuando lo coloco en mi programa principal la scrollbar desaparece, alguien que pueda orientarme???
dejo mi codigo para que le den un vistazo en la parte de abajo coloque un comment de cual scrollbar es horizontal y vertical 

       
       self.wind = window
       self.wind.title('Vitasis Laboratorio Médico')
       self.wind.configure(background = 'gray')
       self.wind.geometry('1210x823')
       #self.wind.resizable(0, 0)
       
       #Pestañas
       self._tab_control = ttk.Notebook(self.wind)
       self._tab_control.grid(row= 1, column = 0)
       self.tab2 = ttk.Frame(self._tab_control)
       self._tab_control.add(self.tab2, text="Pacientes", compound=tk.TOP)

       columns = ('#1', '#2', '#3', '#4', '#5', '#6', '#7', '#8', '#9', '#10', '#11', '#12', '#13', '#14', '#15', '#16', '#17', '#18', '#19')
       self.tree2 = ttk.Treeview(self.tab2, show='headings', height=3, columns=columns)
       self.tree2.grid(row=0, column=0, columnspan=2, sticky = tk.W+tk.E+tk.N+tk.S)
       self.tree2.grid_rowconfigure(0, weight=1)
       self.tab2.grid_columnconfigure(0, weight=1)
       self.tab2.grid_columnconfigure(1, weight=1)
     
     
       self.tree2.column("#1", width=50, minwidth=270, stretch=tk.NO)
       self.tree2.column("#2", width=150, minwidth=150, stretch=tk.NO)
       self.tree2.column("#3", width=150, minwidth=200)
       self.tree2.column("#4", width=150, minwidth=270, stretch=tk.NO)
       self.tree2.column("#5", width=50, minwidth=270, stretch=tk.NO)
       self.tree2.column("#6", width=100, minwidth=270, stretch=tk.NO)
       self.tree2.column("#7", width=290)
       self.tree2.column("#8", width=290) # Prueba Clinica 2
       self.tree2.column("#9", width=290) # Prueba Clinica 3
       self.tree2.column("#10", width=290) # Prueba Clinica 4
       self.tree2.column("#11", width=290) # Prueba Clinica 5
       self.tree2.column("#12", width=100) # Fecha de estudio
       self.tree2.column("#13", width=100) # Fecha de entrega
       self.tree2.column("#14", width=50) # Atendido
       self.tree2.column("#15", width=100) # Promocion
       self.tree2.column("#16", width=100) #Subtotal
       self.tree2.column("#17", width=100) # Anticipo
       self.tree2.column("#18", width=100) # Total
       self.tree2.column("#19", width=100) # Saldo a pagar

       self.tree2.heading('#1', text='Folio', anchor=tk.CENTER)
       self.tree2.heading('#2', text='Nombre', anchor=tk.CENTER)
       self.tree2.heading('#3', text='Dirección', anchor=tk.CENTER)
       self.tree2.heading('#4', text='Teléfono', anchor=tk.CENTER)
       self.tree2.heading('#5', text='Edad', anchor=tk.CENTER)
       self.tree2.heading('#6', text='Sexo', anchor=tk.CENTER)
       self.tree2.heading('#7', text='Prueba Clinica 1', anchor=tk.CENTER)
       self.tree2.heading('#8', text='Prueba Clinica 2', anchor=tk.CENTER)
       self.tree2.heading('#9', text='Prueba Clinica 3', anchor=tk.CENTER)
       self.tree2.heading('#10', text='Prueba Clinica 4', anchor=tk.CENTER)
       self.tree2.heading('#11', text='Prueba Clinica 5', anchor=tk.CENTER)
       self.tree2.heading('#12', text='Fecha de estudio', anchor=tk.CENTER)
       self.tree2.heading('#13', text='Fecha de entrega', anchor=tk.CENTER)
       self.tree2.heading('#14', text='Atendido', anchor=tk.CENTER)
       self.tree2.heading('#15', text='Promoción', anchor=tk.CENTER)
       self.tree2.heading('#16', text='Subtotal', anchor=tk.CENTER)
       self.tree2.heading('#17', text='Anticipo', anchor=tk.CENTER)
       self.tree2.heading('#18', text='Total', anchor=tk.CENTER)
       self.tree2.heading('#19', text='Saldo a pagar', anchor=tk.CENTER)
       
      # Scrollbar vertical#########################################################

       vsb = ttk.Scrollbar(self.tab2, orient="vertical", command=self.tree2.yview)
       vsb.grid(row=0, column=1, sticky= N + S)
       self.tree2.configure(yscrollcommand=vsb.set)

       # Scrollbar Horizontal########################################################

       hsb = ttk.Scrollbar(self.tab2, orient="horizontal", command=self.tree2.xview)
       hsb.grid(row = 1, column=0, sticky = W + E)
       self.tree2.configure(xscrollcommand = hsb.set)
       self.get_pacients()

Imprimir

  Ayuda con programa de If/Else de comparacion de numeros
Enviado por: Gargantia - 10-07-2019, 02:41 PM - Foro: General - Respuestas (2)

HolaSmile, llevo un tiempo queriendo aprender a programar en Python y por fin lo estoy haciendo, en fin en todo caso ahora estoy aprendiendo el uso de los If/Else pero estoy teniendo un problema con un código (el cogido lo dejare abajo ) que compara dos números y te dice si uno es mayor que otro, si es menor o si son iguales pero estoy teniendo problemas en la parte de "igual" ¿Qué estoy haciendo mal? y ¿Como lo corrijo ?  

Código:
a=int(input("Tecle un numero: "))
b=int(input("Tecle otro numero: "))

if a>b:  
   print("El numero mas grande es:"+str(a))
elif a<b:
   print("El numero mas pequeño es:"+str(b))
else a==b:
   print("Los dos numeros son iguales")

Imprimir

  Ayuda con convertir siguiente código a Arreglo
Enviado por: Prappo - 08-07-2019, 07:05 PM - Foro: Visualización y análisis de datos - Sin respuestas

Hola, tengo un trabajo para mi universidad y necesito pasar el siguiente código a Arreglo, me podrían ayudar porfavor.


Código:
Fila1st = []
filaVac = []
contador80=[]
contador60=[]
contador50=[]

Fila1=[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,31,32,33]
Fila2=[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,31,32,33]
Fila3=[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,31,32,33]
Fila4=[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,31,32,33]
Fila5=[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,31,32,33]
Fila6=[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,31,32,33]
rutA=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]
rutB=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]
rutC=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]
rutD=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]
rutE=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]
rutF=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]

for i in range(0,48):
    Fila1st.append("=")
for i in range(0,48):
    filaVac.append(" ")

def Asientos():
    print("=",end=' ')
    for i in Fila1st:
        print(i,end=' ')
    print("=")
    print("=",end=' ')
    print("|F|",end=' ')
    for i in Fila6:
        if i!=4:
            print(i,end=' ')
        else:
            print(f"{i}  ",end=' ')
    print("=")
    print("=",end=' ')
    print("|E|",end=' ')
    for i in Fila5:
        if i!=4:
            print(i,end=' ')
        else:
            print(f"{i}  ",end=' ')
    print("=")
    print("=",end=' ')
    print("|D|",end=' ')
    for i in Fila4:
        if i!=4:
            print(i,end=' ')
        else:
            print(f"{i}  ",end=' ')
    print("=")
    print("=",end=' ')
    for i in filaVac:
        print(i,end=' ')
    print("=")
    print("=",end=' ')
    print("|C|",end=' ')
    for i in Fila3:
        if i!=4:
            print(i,end=' ')
        else:
            print(f"{i}  ",end=' ')
    print("=")
    print("=",end=' ')
    print("|B|",end=' ')
    for i in Fila2:
        if i!=4:
            print(i,end=' ')
        else:
            print(f"{i}  ",end=' ')
    print("=")
    print("=",end=' ')
    print("|A|",end=' ')
    for i in Fila1:
        if i!=4:
            print(i,end=' ')
        else:
            print(f"{i}  ",end=' ')
    print("=")
    print("=",end=' ')
    for i in Fila1st:
        print(i,end=' ')
    print("*")
    print("|Asientos De 1-5 y la 18    | Espacio adicional para piernas        $80.000")
    print("|Asientos De 6-9 y de 19-33 | Común                                 $60.000")
    print("|Asientos De 10-17          | No reclinables                        $50.000")
def menu():
    while True:
        import os
        os.system("clear")
        print("========================")
        print("    Línea Aérea Flash   ")
        print("========================")
        print("Selecciona una opción")
        print("1) Venta")
        print("2) Cierre")
        while True:
            try:
                opcion1=int(input("Ingrese una opción: "))
                break
            except ValueError:
                print("Ingrese solo números.")
        if opcion1==1:
            while True:
                os.system("clear")
                print("==================================")
                print("        Línea Aérea Flash         ")
                print("==================================")
                print("Selecciona una opción")
                print("1) Comprar pasajes")
                print("2) Ubicaciones disponibles")
                print("3) Ver listado de pasajeros")
                print("4) Buscar pasajero")
                print("5) Reasignar asiento")
                print("6) Mostrar ganancias totales")
                print("7) Volver a inicio")
                while True:
                    try:
                        opcion2=int(input("Ingrese una opción: "))
                        break
                    except ValueError:
                        print("Ingrese solo números.")
                if opcion2==1:
                    while True:
                        try:
                            pasajes=int(input("Ingrese la cantidad de pasajes a comprar: "))
                            if (pasajes+len(contador50)+len(contador60)+len(contador80))<=198:
                                break
                            else:
                                print(f"El número seleccionado supera el límite de asientos disponibles por: {(pasajes+len(contador50)+len(contador60)+len(contador80))-198}")    
                        except ValueError:
                            print("Ingrese solo números.")
                    contador=0
                    c50=[]
                    c60=[]
                    c80=[]
                    while contador<pasajes:
                        os.system("clear")
                        Asientos()
                        while True:
                            fila=input("Ingrese fila: ")
                            if fila.upper()=='A' or fila.upper()=='a' or fila.upper()=='B' or fila.upper()=='b' or fila.upper()=='C' or fila.upper()=='c' or fila.upper()=='D' or fila.upper()=='d' or fila.upper()=='E' or fila.upper()=='e' or fila.upper()=='F' or fila.upper()=='f':
                                break
                            else:
                                print("Ingrese una fila válida.")                        
                        while True:
                            try:
                                numeroAsiento=int(input("Ingrese número de asiento: "))
                                if 0<numeroAsiento<34:
                                    break
                                else:
                                    print("Ingrese un número de asiento entre 1 y 33.")
                            except ValueError:
                                print("Ingrese solo números.")
                        while True:
                            rut=input("Ingrese rut del pasajero en formato 11111111-1: ")
                            if len(rut)>1:
                                if verificaRut(rut)==rut[-1].upper():
                                    rut=int(rut[:-2])
                                    break
                            else:
                                print("Ingrese un rut válido")
                        if fila.upper() == 'A' and (0 < numeroAsiento < 4 or 4 < numeroAsiento < 10):
                            if Fila1[numeroAsiento-1] != 'X':
                                Fila1[numeroAsiento-1] = 'X'
                                precio(numeroAsiento,c50,c60,c80)
                                contador += 1
                                rutA[numeroAsiento-1]=(rut)
                            else:
                                input("Asiento no está disponible, escoja otro. Presione Enter para continuar")
                        elif fila.upper() == 'A' and numeroAsiento == 4:
                            if Fila1[numeroAsiento-1] != 'X  ':
                                Fila1[numeroAsiento-1] = 'X  '
                                precio(numeroAsiento,c50,c60,c80)
                                contador += 1
                                rutA[numeroAsiento-1]=(rut)
                            else:
                                input("Asiento no está disponible, escoja otro. Presione Enter para continuar")
                        elif fila.upper() == 'A' and numeroAsiento > 10:
                            if Fila1[numeroAsiento-1] != ' X':
                                Fila1[numeroAsiento-1] = ' X'
                                precio(numeroAsiento,c50,c60,c80)
                                contador += 1
                                rutA[numeroAsiento-1]=(rut)
                            else:
                                input("Asiento no está disponible, escoja otro. Presione Enter para continuar")
                        elif fila.upper() == 'B' and (0 < numeroAsiento < 4 or 4 < numeroAsiento < 10):
                            if Fila2[numeroAsiento-1] != 'X':
                                Fila2[numeroAsiento-1] = 'X'
                                precio(numeroAsiento,c50,c60,c80)
                                contador += 1
                                rutB[numeroAsiento-1]=(rut)
                            else:
                                input("Asiento no está disponible, escoja otro. Presione Enter para continuar")
                        elif fila.upper() == 'B' and numeroAsiento == 4:
                            if Fila2[numeroAsiento-1] != 'X  ':
                                Fila2[numeroAsiento-1] = 'X  '
                                precio(numeroAsiento,c50,c60,c80)
                                contador += 1
                                rutB[numeroAsiento-1]=(rut)
                            else:
                                input("Asiento no está disponible, escoja otro. Presione Enter para continuar")
                        elif fila.upper() == 'B' and numeroAsiento > 10:
                            if Fila2[numeroAsiento-1] != ' X':
                                Fila2[numeroAsiento-1] = ' X'
                                precio(numeroAsiento,c50,c60,c80)
                                contador += 1
                                rutB[numeroAsiento-1]=(rut)
                            else:
                                input("Asiento no está disponible, escoja otro. Presione Enter para continuar")
                        elif fila.upper() == 'C' and (0 < numeroAsiento < 4 or 4 < numeroAsiento < 10):
                            if Fila3[numeroAsiento-1] != 'X':
                                Fila3[numeroAsiento-1] = 'X'
                                precio(numeroAsiento,c50,c60,c80)
                                contador += 1
                                rutC[numeroAsiento-1]=(rut)
                            else:
                                input("Asiento no está disponible, escoja otro. Presione Enter para continuar")
                        elif fila.upper() == 'C' and numeroAsiento == 4:
                            if Fila3[numeroAsiento-1] != 'X  ':
                                Fila3[numeroAsiento-1] = 'X  '
                                precio(numeroAsiento,c50,c60,c80)
                                contador += 1
                                rutC[numeroAsiento-1]=(rut)
                            else:
                                input("Asiento no está disponible, escoja otro. Presione Enter para continuar")
                        elif fila.upper() == 'C' and numeroAsiento > 10:
                            if Fila3[numeroAsiento-1] != ' X':
                                Fila3[numeroAsiento-1] = ' X'
                                precio(numeroAsiento,c50,c60,c80)
                                contador += 1
                                rutC[numeroAsiento-1]=(rut)
                            else:
                                input("Asiento no está disponible, escoja otro. Presione Enter para continuar")
                        elif fila.upper() == 'D' and (0 < numeroAsiento < 4 or 4 < numeroAsiento < 10):
                            if Fila4[numeroAsiento-1] != 'X':
                                Fila4[numeroAsiento-1] = 'X'
                                precio(numeroAsiento,c50,c60,c80)
                                contador += 1
                                rutD[numeroAsiento-1]=(rut)
                            else:
                                input("Asiento no está disponible, escoja otro. Presione Enter para continuar")
                        elif fila.upper() == 'D' and numeroAsiento == 4:
                            if Fila4[numeroAsiento-1] != 'X  ':
                                Fila4[numeroAsiento-1] = 'X  '
                                precio(numeroAsiento,c50,c60,c80)
                                contador += 1
                                rutD[numeroAsiento-1]=(rut)
                            else:
                                input("Asiento no está disponible, escoja otro. Presione Enter para continuar")
                        elif fila.upper() == 'D' and numeroAsiento > 10:
                            if Fila4[numeroAsiento-1] != ' X':
                                Fila4[numeroAsiento-1] = ' X'
                                precio(numeroAsiento,c50,c60,c80)
                                contador += 1
                                rutD[numeroAsiento-1]=(rut)
                            else:
                                input("Asiento no está disponible, escoja otro. Presione Enter para continuar")
                        elif fila.upper() == 'E' and (0 < numeroAsiento < 4 or 4 < numeroAsiento < 10):
                            if Fila5[numeroAsiento-1] != 'X':
                                Fila5[numeroAsiento-1] = 'X'
                                precio(numeroAsiento,c50,c60,c80)
                                contador += 1
                                rutE[numeroAsiento-1]=(rut)
                            else:
                                input("El asiento no está disponible, por favor escoja otro. Presione Enter para continuar...")
                        elif fila.upper() == 'E' and numeroAsiento == 4:
                            if Fila5[numeroAsiento-1] != 'X  ':
                                Fila5[numeroAsiento-1] = 'X  '
                                precio(numeroAsiento,c50,c60,c80)
                                contador += 1
                                rutE[numeroAsiento-1]=(rut)
                            else:
                                input("El asiento no está disponible, por favor escoja otro. Presione Enter para continuar...")
                        elif fila.upper() == 'E' and numeroAsiento > 10:
                            if Fila5[numeroAsiento-1] != ' X':
                                Fila5[numeroAsiento-1] = ' X'
                                precio(numeroAsiento,c50,c60,c80)
                                contador += 1
                                rutE[numeroAsiento-1]=(rut)
                            else:
                                input("El asiento no está disponible, por favor escoja otro. Presione Enter para continuar...")
                        elif fila.upper() == 'F' and (0 < numeroAsiento < 4 or 4 < numeroAsiento < 10):
                            if Fila6[numeroAsiento-1] != 'X':
                                Fila6[numeroAsiento-1] = 'X'
                                precio(numeroAsiento,c50,c60,c80)
                                contador += 1
                                rutF[numeroAsiento-1]=(rut)
                            else:
                                input("El asiento no está disponible, por favor escoja otro. Presione Enter para continuar...")
                        elif fila.upper() == 'F' and numeroAsiento == 4:
                            if Fila6[numeroAsiento-1] != 'X  ':
                                Fila6[numeroAsiento-1] = 'X  '
                                precio(numeroAsiento,c50,c60,c80)
                                contador += 1
                                rutF[numeroAsiento-1]=(rut)
                            else:
                                input("El asiento no está disponible, por favor escoja otro. Presione Enter para continuar...")
                        elif fila.upper() == 'F' and numeroAsiento > 10:
                            if Fila6[numeroAsiento-1] != ' X':
                                Fila6[numeroAsiento-1] = ' X'
                                precio(numeroAsiento,c50,c60,c80)
                                contador += 1
                                rutF[numeroAsiento-1]=(rut)
                            else:
                                input("El asiento no está disponible, por favor escoja otro. Presione Enter para continuar...")
                    os.system("cls")
                    print("******** TOTAL BOLETA ********")
                    print("El total de pasajes es: ")
                    print(f"Con espacio adicional: {len(c80)}")
                    print(f"Común: {len(c60)}")
                    print(f"No reclinable: {len(c50)}")
                    print(f"Total de su boleta es: ${(len(c80)*80000)+(len(c60)*60000)+(len(c50)*50000)}")
                    print("******************************")
                    input("Presione Enter para continuar...")
                elif opcion2==2:
                    Asientos()
                    input("Presione Enter para continuar...")
                elif opcion2==3:
                    print("La lista de pasajeros es:")
                    listaRut=rutA+rutB+rutC+rutD+rutE+rutF
                    listaRut.sort()
                    for i in listaRut:
                        if i!=0:
                            print(i)
                    input("Presione Enter para continuar...")
                elif opcion2==4:
                    while True:
                            rut=input("Ingrese rut del pasajero en formato 11111111-1: ")
                            if len(rut)>1:
                                if verificaRut(rut)==rut[-1].upper():
                                    rut=int(rut[:-2])
                                    break
                            else:
                                print("Ingrese un rut válido")
                    contRut=0
                    listaRut=rutA+rutB+rutC+rutD+rutE+rutF
                    for i in listaRut:
                        if i==rut:
                            contRut+=1
                    if contRut>0:
                        print("El rut ingresado existe en la lista de pasajeros.")
                        input("Presione Enter para continuar...")
                    else:
                        print("El rut ingresado no existe en la lista de pasajeros.")
                        input("Presione Enter para continuar...")
                elif opcion2==5:
                    while True:
                        rut=input("Ingrese rut del pasajero en formato 11111111-1: ")
                        if len(rut)>1:
                            if verificaRut(rut) == rut[-1].upper():
                                rut = int(rut[:-2])
                                break
                        else:
                            print("Ingrese un rut válido")
                    listaRut=rutA+rutB+rutC+rutD+rutE+rutF
                    indices=[i for i, valor in enumerate(listaRut) if valor == rut]
                    if len(indices)==1:
                        while True:
                            nuevoRut=input("Ingrese nuevo rut para ese asiento en formato 11111111-1: ")
                            if len(nuevoRut)>1:
                                if verificaRut(nuevoRut)==nuevoRut[-1].upper():
                                    nuevoRut=int(nuevoRut[:-2])
                                    break
                            else:
                                print("Ingrese un rut válido")
                        if -1<indices[0]<33:
                            rutA[indices[0]]=nuevoRut
                            print("El rut ha sido reemplazado con éxito.")
                            input("Presione Enter para continuar...")
                        elif 32<indices[0]<66:
                            rutB[indices[0]-33]=nuevoRut
                            print("El rut ha sido reemplazado con éxito.")
                            input("Presione Enter para continuar...")
                        elif 65<indices[0]<99:
                            rutC[indices[0]-66]=nuevoRut
                            print("El rut ha sido reemplazado con éxito.")
                            input("Presione Enter para continuar...")
                        elif 98<indices[0]<132:
                            rutD[indices[0]-99]=nuevoRut
                            print("El rut ha sido reemplazado con éxito.")
                            input("Presione Enter para continuar...")
                        elif 131<indices[0]<164:
                            rutE[indices[0]-132]=nuevoRut
                            print("El rut ha sido reemplazado con éxito.")
                            input("Presione Enter para continuar...")
                        elif 163<indices[0]<198:
                            rutF[indices[0]-164]=nuevoRut
                            print("El rut ha sido reemplazado con éxito.")
                            input("Presione Enter para continuar...")
                    elif len(indices)>1:
                        print("Se han encontrado múltiples asientos asignados al rut ingresado.")
                        print("Se solicita especificar fila y número de asiento que se desea reasignar.")
                        while True:
                            while True:
                                fila=input("Ingrese fila: ")
                                if fila.upper()=='A' or fila.upper()=='B' or fila.upper()=='C' or fila.upper()=='D' or fila.upper()=='E' or fila.upper()=='F':
                                    break
                                else:
                                    print("Ingrese una fila válida.")                        
                            while True:
                                try:
                                    numeroAsiento=int(input("Ingrese número de asiento: "))
                                    if 0<numeroAsiento<34:
                                        break
                                    else:
                                        print("Ingrese un número de asiento entre 1 y 33.")
                                except ValueError:
                                    print("Ingrese solo números.")
                            if fila.upper() == 'A':
                                if rutA[numeroAsiento-1] == rut:
                                    while True:
                                        nuevoRut=input("Ingrese nuevo rut para ese asiento en formato 11111111-1: ")
                                        if len(nuevoRut)>1:
                                            if verificaRut(nuevoRut)==nuevoRut[-1].upper():
                                                nuevoRut=int(nuevoRut[:-2])
                                                break
                                        else:
                                            print("Ingrese un rut válido")
                                    rutA[numeroAsiento-1] = nuevoRut
                                    break
                                else:
                                    input("El asiento no coincide con el rut ingresado, por favor escoja solo los que tenga comprado el rut. Presione Enter para continuar...")
                                    break
                            if fila.upper() == 'B':
                                if rutB[numeroAsiento-1] == rut:
                                    while True:
                                        nuevoRut=input("Ingrese nuevo rut para ese asiento en formato 11111111-1: ")
                                        if len(nuevoRut)>1:
                                            if verificaRut(nuevoRut)==nuevoRut[-1].upper():
                                                nuevoRut=int(nuevoRut[:-2])
                                                break
                                        else:
                                            print("Ingrese un rut válido")
                                    rutB[numeroAsiento-1] = nuevoRut
                                    break
                                else:
                                    input("El asiento no coincide con el rut ingresado, por favor escoja solo los que tenga comprado el rut. Presione Enter para continuar...")
                                    break
                            if fila.upper() == 'C':
                                if rutC[numeroAsiento-1] == rut:
                                    while True:
                                        nuevoRut=input("Ingrese nuevo rut para ese asiento en formato 11111111-1: ")
                                        if len(nuevoRut)>1:
                                            if verificaRut(nuevoRut)==nuevoRut[-1].upper():
                                                nuevoRut=int(nuevoRut[:-2])
                                                break
                                        else:
                                            print("Ingrese un rut válido")
                                    rutC[numeroAsiento-1] = nuevoRut
                                    break
                                else:
                                    input("El asiento no coincide con el rut ingresado, por favor escoja solo los que tenga comprado el rut. Presione Enter para continuar...")
                                    break
                            if fila.upper() == 'D':
                                if rutD[numeroAsiento-1] == rut:
                                    while True:
                                        nuevoRut=input("Ingrese nuevo rut para ese asiento en formato 11111111-1: ")
                                        if len(nuevoRut)>1:
                                            if verificaRut(nuevoRut)==nuevoRut[-1].upper():
                                                nuevoRut=int(nuevoRut[:-2])
                                                break
                                        else:
                                            print("Ingrese un rut válido")
                                    rutD[numeroAsiento-1] = nuevoRut
                                    break
                                else:
                                    input("El asiento no coincide con el rut ingresado, por favor escoja solo los que tenga comprado el rut. Presione Enter para continuar...")
                                    break
                            if fila.upper() == 'E':
                                if rutE[numeroAsiento-1] == rut:
                                    while True:
                                        nuevoRut=input("Ingrese nuevo rut para ese asiento en formato 11111111-1: ")
                                        if len(nuevoRut)>1:
                                            if verificaRut(nuevoRut)==nuevoRut[-1].upper():
                                                nuevoRut=int(nuevoRut[:-2])
                                                break
                                        else:
                                            print("Ingrese un rut válido")
                                    rutE[numeroAsiento-1] = nuevoRut
                                    break
                                else:
                                    input("El asiento no coincide con el rut ingresado, por favor escoja solo los que tenga comprado el rut. Presione Enter para continuar...")
                                    break
                            if fila.upper() == 'F':
                                if rutF[numeroAsiento-1] == rut:
                                    while True:
                                        nuevoRut=input("Ingrese nuevo rut para ese asiento en formato 11111111-1: ")
                                        if len(nuevoRut)>1:
                                            if verificaRut(nuevoRut)==nuevoRut[-1].upper():
                                                nuevoRut=int(nuevoRut[:-2])
                                                break
                                        else:
                                            print("Ingrese un rut válido")
                                    rutF[numeroAsiento-1] = nuevoRut
                                    break
                                else:
                                    input("El asiento no coincide con el rut ingresado, por favor escoja solo los que tenga comprado el rut. Presione Enter para continuar...")
                                    break
                    else:
                        print("No hay coincidencias en la lista de pasajeros, por lo tanto no se puede reasignar pasajero.")
                        input("Presione Enter para continuar...")
                elif opcion2==6:
                    os.system("clear")
                    print("******** TOTAL GANANCIAS PARCIALES ********")
                    print("El total de pasajes es: ")
                    print(f"Con espacio adicional: {len(contador80)}")
                    print(f"Común: {len(contador60)}")
                    print(f"No reclinable: {len(contador50)}")
                    print(f"Total de su boleta es: ${(len(contador80)*80000)+(len(contador60)*60000)+(len(contador50)*50000)}")
                    print("====================")
                    input("Presione Enter para continuar...")
                elif opcion2==7:
                    break
                else:
                    print("Seleccione una opción válida.")
        elif opcion1==2:
            os.system("clear")
            print("==================================================================")
            print("                         GANACIAS DEL DÍA                         ")
            print("==================================================================")
            print("Tipo de Asiento                   Cantidad           Total")
            print("")
            print(f"Asiento Común         $60.000     {len(contador60)}                  ${(len(contador60)*60000)}")
            print(f"Espacio para piernas  $80.000     {len(contador80)}                  ${(len(contador80)*80000)}")
            print(f"No reclinable         $50.000     {len(contador50)}                  ${(len(contador50)*50000)}")
            print("")
            print(f"TOTAL                             {len(contador60)+len(contador80)+len(contador50)}                  ${(len(contador80)*80000)+(len(contador60)*60000)+(len(contador50)*50000)}")
            print("==================================================================")
            break
        else:
            print("Seleccione una opción válida.")        
            


def precio(numeroAsiento,c50,c60,c80):
    if 0<numeroAsiento<6 or numeroAsiento==18:
        contador80.append(0)
        c80.append(0)
    elif 5<numeroAsiento<10 or 18<numeroAsiento<34:
        contador60.append(0)
        c60.append(0)
    else:
        contador50.append(0)
        c50.append(0)
def verificaRut(rut):
    serie=2
    suma=0
    auxrut=rut[:-2]
    for i in reversed(auxrut):
        if serie<8:
            suma+=(int(i)*serie)
            serie+=1
        else:
            serie=2
            suma+=(int(i)*serie)
            serie+=1
    suma=11-(suma%11)
    if 1<=suma<=9:
        dVer=str(suma)
    elif suma==10:
        dVer="K"
    elif suma==11:
        dVer="0"
    return dVer

menu()

Imprimir

  Identificar widges/variables
Enviado por: Myszowor - 06-07-2019, 07:43 AM - Foro: Aplicaciones de escritorio - Respuestas (4)

Buenas:

Os pongo el código de la prueba que estoy realizando primero para que quede más claro.(Una vez más ni caso de los import).

from tkinter import *
from tkinter import ttk
from datetime import *
from tkinter import messagebox
import time
import calendar
import psycopg2
import threading
from threading import Timer
import os
import sys
from functools import partial
import tkinter.font as tkfont



class Appprueba:
    
    def __init__(self):
        
        class Imprimir:
        
                def imp():
                    print(ttk.Button().cget('text')) # Esto no da error pero tampoco imprime nada solo un espacio vacío.
                
                def imp1():
                    print('Probando las clases')
        
        self.prin = Tk()
        self.prin.title("PRUEBA CLASS")
        self.prin.geometry('800x600+500+200')
        self.prin.resizable(False, False)
        
        self.button1 = ttk.Button(self.prin, text='20190725', command=Imprimir.imp)
        self.button1.grid(row=0, column=0, padx=5)
        
        self.button2 = ttk.Button(self.prin, text='20198968', command=Imprimir.imp1)
        self.button2.grid(row=1, column=0, padx=5)
        
        
        self.prin.mainloop()

        
        
        


def main():
    my_app = Appprueba()
    
if __name__ == '__main__':
    main()


Bien en ese código tengo una app con dos botones dentro de la cual e incluido una clase que a su vez dispone de distintos métodos/funciones. Todo funciona correctamente a excepción del primer método de la clase imprimir. (Funciona perfectamente si el código fuera:
                def imp():
                      print(self.button1.cget('text'))

Pero esto solo sirve para el botón 1 y yo lo que quiero es un método que pueda utilizar para todos los botones que vaya incluyendo en la app sin tener que crear una función con la variable específica para cada botón de la app.

¿Es esto posible?. ¿Es posible identificar los widgets en Tkinter?. Así quizá también resolvería mi problema con los datos de los entrys de los notebook que ya expuse en otro post ya que si puedo indicarle al program que texto de que widget es el que quiero añadir a la lista solucionaría mi problema. (Eso creo).


Muchas Gracias.

Imprimir

  Verificar nombres de archivos y seleccionar uno
Enviado por: Kardia__ - 24-06-2019, 07:03 PM - Foro: General - Respuestas (1)

Estimados, buenas a todos!

Estoy con una duda para automatizar una tarea, paso a comentarles:

Necesito realizar una combinación de archivos PDF a uno solo (esto ya lo estoy realizando con PyPDF2). El inconveniente es el siguiente:
Hay archivos en esta carpeta donde están los PDF que tienen distintas versiones, y yo necesito tomar la última versión y descartar las restantes.
Por ejemplo, un archivo se llama recomendación.pdf, pero si por algún motivo se modifica, los usuarios lo guardan como recomendaciónV1.pdf, si se vuelve a modificar, recomendaciónV2.pdf, etc.
Lo que yo necesitaría hacer es agarrar la última versión, en este caso, "recomendaciónV2.pdf" y descartar tanto la V1, como la anterior.

Ejemplo de carpeta:
recomendación.pdf
recomendaciónV1.pdf
recomendaciónV2.pdf
análisis.pdf
resoluciones.pdf
aperturas.pdf
aperturasV1.pdf
redacciones.pdf
histórico.pdf

Como ven, hay archivos PDF que no tienen otras versiones, yo debería copiar las de la última versión a otra carpeta, para que de ese anterior me quede lo siguiente:

recomendaciónV2.pdf
análisis.pdf
resoluciónes.pdf
aperturasV1.pdf
redacciones.pdf
histórico.pdf

Como se ve, están descartados: recomendación.pdf, recomendaciónV1.pdf, aperturas.pdf

Y luego ahí haría la combinación de todos los pdf a uno solo.

¿Se les ocurre alguna manera de poder tomar la última versión?

Desde ya muchas gracias.

Imprimir

  Consulta sobre lista
Enviado por: IsaacToro - 17-06-2019, 04:12 PM - Foro: General - Respuestas (1)

Hola buenas a todos, que estéis todos muy bien tengo una consulta acerca de realizar una tarea en específica, básicamente quería saber cómo realizarla, consiste en un variable x, solicitar un numero( no importa el largo) a dicho número cada uno de sus cifras almacenarlo en una lista.
Luego que cada una de esas cifras Deben enteros en la lista para obviamente realizar operaciones matemáticas con estas.

Imprimir