elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Guía rápida para descarga de herramientas gratuitas de seguridad y desinfección


  Mostrar Temas
Páginas: 1 [2]
11  Programación / Scripting / [Python3]¿Cómo lo puedo optimizar? en: 14 Enero 2020, 03:34 am
Básicamente se trata de una guía telefónica, la cual tiene ser construida usando diccionarios esa es la restricción, en la cual se puede realizar una búsqueda por  el nombre de la persona y luego imprimir ese nombre con su respectivo número.

PERO TODO INDICA QUE LE FALTA UNA MEJOR OPTIMIZACIÓN.


Gracias por sus respuestas.

Código
  1.    def phone_book():
  2.        n = int(input())
  3.        phone_book = {}  # dictionary
  4.        for i in range(n):
  5.            string = input().split()
  6.            phone_book.update({string[0]: int(string[1])})
  7.        return phone_book
  8.  
  9.    # processing
  10.    def query(phone_book):
  11.        i = 0
  12.        while i < len(phone_book):
  13.            _query = input()
  14.            if _query in phone_book:
  15.                print(f"{_query}={phone_book[_query]}")
  16.            else:
  17.                print("Not found")
  18.            i += 1
  19.    query(phone_book())
  20.  
  21. [/
12  Programación / Scripting / [Python3] Ayuda contar numeros en string en: 29 Diciembre 2019, 18:04 pm
Hola buenas a todos, molestaba a ver si me dan alguna de idea de como solucionar este ejercicio

Debo de diseñar un programa que cuente la cantidad de numeros en una cadena, lo que he podido realizar hasta ahora es simplemente contar  la cantidad de digitos que aparecen sin importar la cifra.

Ejemplo
'un 1 dos 201 tres 3', con el codigo que realice me cuenta cinco digitos y no deberian de ser cinco sino 3.
No se si me explico
Gracias de antemano por su atención

Código
  1. #Ejercicio#165 Contar cantidad de números en una cadena
  2.   string = input("Digita una cadena: ")
  3.   numbers = 0
  4.   for i in range(0,len(string)):
  5.       if string[i].isnumeric():
  6.           numbers+=1
  7.    print("Cantidad de números encontrados => ",numbers)
  8.  

MOD: Titulo modificado (mas descriptivo)
13  Programación / Scripting / ¿Cómo lo puedo hacer más eficiente? en: 19 Diciembre 2019, 09:02 am
Siento que sea algo extenso, si alguno me diera alguna idea de como hacerlo más eficiente se aceptan sugerencias.Gracias

Código
  1. # Ejercicio#129 Máximo común divisor
  2.  
  3.    # Lista que contendra los valores divisores == 0
  4.    # para luego de esta lista sacar el maximo de todos.
  5.    maximo_divisor = []
  6.  
  7.    # Pedir datos al usuario
  8.    a = int(input("Digita el primer dato: "))
  9.    b = int(input("Digita el segundo dato: "))
  10.    if 0 > (a or b):
  11.        print("Error al interpretar")
  12.    else:
  13.        if a < b:
  14.            for i in range(1,a+1):
  15.                divisor_a = a%i
  16.                divisor_b = b%i
  17.                # print(divisor_a, divisor_b)
  18.                if divisor_a != 0 and divisor_b != 0:
  19.                    print(f"El numero {i} no es divisor de {a}")
  20.                else:
  21.                    if divisor_a == 0 and divisor_b == 0:
  22.                        print(f"El número {i} es divisor de {a}")
  23.                        if divisor_a == 0:
  24.                            maximo_divisor.append(i)              
  25.        else:
  26.            for i in range(1,b+1):
  27.                divisor_a = a%i
  28.                divisor_b = b%i
  29.                # print(divisor_a, divisor_b)
  30.                if divisor_a != 0 and divisor_b != 0:
  31.                    print(f"El numero {i} no es divisor de {b}")
  32.                else:
  33.                    if divisor_a == 0 and divisor_b == 0:
  34.                        print(f"El número {i} es divisor de {b}")
  35.                        if divisor_b == 0:
  36.                            maximo_divisor.append(i)
  37.        print()
  38.        print("El maxio común divisor es => {}".format(max(maximo_divisor)))
  39.  
14  Programación / Scripting / Pequeño programa en python de desglose en: 19 Diciembre 2019, 04:55 am
Código
  1.    # Ejercicio#67 Desglose de un monto determinado
  2.    monto = int(input("Digita el monto: "))
  3.    print()
  4.  
  5.    # Billetes disponibles
  6.    # 500, 200, 100, 50, 20, 10, 5
  7.    # Monedas disponibles 2, 1
  8.  
  9.    b500 = monto//500
  10.    monto %= 500
  11.    b200 = monto//200
  12.    monto %= 200
  13.    b100 = monto//100
  14.    monto %= 100
  15.    b50 = monto//50
  16.    monto %= 50
  17.    b20 = monto//20
  18.    monto %= 20
  19.    b10 = monto//10
  20.    monto %= 10
  21.    b5 = monto//5
  22.    monto %= 5
  23.    m2 = monto//2
  24.    monto %= 2
  25.    m1 = monto//1
  26.    monto %= 1
  27.    print(f"{b500} billete de 500")
  28.    print(f"{b200} billete de 200")
  29.    print(f"{b100} billete de 100")
  30.    print(f"{b50} billete de 50")
  31.    print(f"{b20} billete de 20")
  32.    print(f"{b10} billete de 10")
  33.    print(f"{b5} billete de 5")
  34.    print(f"{m2} monedas de 2")
  35.    print(f"{m1} monedas de 1")
  36.  
15  Programación / Scripting / Duda en python3 en: 19 Diciembre 2019, 02:22 am
Hola buenos días o buenas tardes a todos soy nuevo en esto de estar en un foro, asi disculpen si la pregunta es tonta, ¿Porqué al utilizar estos operadores me genera salidas diferentes?.

Gracias por sus respuestas.
Código
  1. r = ('a' or 'A')
  2. b = ('a' and 'A')
  3. print (r, b)
  4.  
  5. # r = 'a'
  6. # b = 'A'
  7.  
Páginas: 1 [2]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines