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

 

 


Tema destacado: Recopilación Tutoriales y Manuales Hacking, Seguridad, Privacidad, Hardware, etc


  Mostrar Mensajes
Páginas: 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
161  Programación / Scripting / Re: Saben como puedo quitarle esto? en: 31 Enero 2021, 08:05 am
en listas, tuplas y cadenas
ejemplos de index:

Código
  1. a = (1,2,3,4) #tupla
  2. b = "cadena"  #cadena
  3. print(a.index(3))
  4. print(b.index("n"))    
  5.  

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.

Código
  1. a=(1,2,3,4)
  2. 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ódigo
  1. c= {1:"uno",2:"dos"}
  2. 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  ;D
162  Programación / Scripting / Re: Saben como puedo quitarle esto? en: 31 Enero 2021, 04:59 am
¿es un chiste? si vos lo estás generando con el código:
Código
  1. archivo_txt.write(data + " ")

hay muchas formas de solucionar esto, una fácil sin cambiar tu lógica de programación sería:

Código
  1. for data in cliente:
  2.                if cliente.index(data) != len(cliente)-1:
  3.                    archivo_txt.write(data + " ")
  4.                else:
  5.                    archivo_txt.write(data)
  6.  
  7.  

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¿¿¿???

Código
  1. for data in cliente:
  2.                if cliente.index(data) != len(cliente)-1:
  3.                    archivo_txt.write(data + " ")
  4.                else:
  5.                    archivo_txt.write(data)
  6.  
  7.  
163  Programación / Scripting / Re: Saben como puedo quitarle esto? en: 31 Enero 2021, 04:06 am
1)ahhh mira vos, ponele una a, algo así:
Código
  1. 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 ;(
164  Programación / Scripting / Re: Saben como puedo quitarle esto? en: 31 Enero 2021, 02:18 am
¿es un chiste? si vos lo estás generando con el código:
Código
  1. archivo_txt.write(data + " ")

hay muchas formas de solucionar esto, una fácil sin cambiar tu lógica de programación sería:

Código
  1. for data in cliente:
  2.                if cliente.index(data) != len(cliente)-1:
  3.                    archivo_txt.write(data + " ")
  4.                else:
  5.                    archivo_txt.write(data)
  6.  
  7.  

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... ;)

Citar
¿es un chiste? si vos lo estás generando con el código:
Código
  1. 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  :xD  :laugh: :laugh:
165  Programación / Scripting / Saben como puedo quitarle esto? en: 30 Enero 2021, 22:27 pm
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
Código:
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.  :-*
166  Foros Generales / Foro Libre / Re: Hablemos de teorías conspirativas. en: 24 Enero 2021, 08:15 am
Mi teoría es que el hacker.net roba tu información y después la vende en la marianas Web y así sostienen sus servidores  ;D  :D
167  Programación / Scripting / Poner archivos en funciones Python en: 21 Enero 2021, 20:34 pm
Hola,ayer termine un trabajo el cual nos propusieron,lo logre terminar todo bien.

Pero ahora tenemos que hacer que cuando un archivo se abra por ejemplo en modo lectura,crear una función (def) para hacer eso mismo.

Es decir
Código:
#De hacer esto
file = open("name.txt","r")

#A esto
def open_read():
    file = open("name.txt","r")

Este es mi código
Código
  1. import os
  2.  
  3.  
  4.  
  5.  
  6. clear = lambda: os.system('cls')
  7.  
  8. def encontrar_alumno(num_alumno):
  9.    archivo = open(nom_archivo,"r")
  10.    alumnos = archivo.readlines()
  11.    tot_alumnos = len(alumnos)
  12.    for indice in range(tot_alumnos):
  13.        el_alumno = alumnos[indice]
  14.        alumno_leido = el_alumno.split(' ')
  15.        if alumno_leido[0]==num_alumno:
  16.            return alumno_leido
  17.  
  18.    archivo.close()
  19.    return ''
  20.  
  21. def consulta_ape():
  22.    lista_ape = []    # lista a usar para agregar pertenencia
  23.    archivo = open(nom_archivo, 'r')
  24.    alumnos = archivo.readlines()
  25.  
  26.    tot_alumnos = len(alumnos)
  27.    while True:
  28.        clear()
  29.        el_apellido = input('Ingrese Apellido a buscar (s para salir): ').capitalize()
  30.        if el_apellido.isalpha():
  31.            if el_apellido.lower() =='s':
  32.                break
  33.            else:
  34.                for indice in range(tot_alumnos):
  35.                    el_alumno = alumnos[indice]
  36.                    alumno_leido = el_alumno.split(' ')
  37.                    if alumno_leido[1]==el_apellido:
  38.                        lista_ape.append(alumno_leido)
  39.  
  40.                archivo.close()
  41.                clear()
  42.                print (f'Alumnos con el apellido {el_apellido} encontrados')
  43.                print()
  44.                print ('Nro. Apellido      Nombre    Materia  Grupo  Nota')
  45.                print('--------------------------------------------------')
  46.  
  47.                for alumno in lista_ape:
  48.                    for data in alumno:
  49.                        print (data, end='     ')
  50.  
  51.                    print()
  52.                print()
  53.                print('Pulse <Intro para volver al menu>')
  54.                input()
  55.  
  56.  
  57.  
  58.  
  59. ############
  60.  
  61. def buscar_grupo():
  62.    lista_grupo = []    
  63.    archivo = open(nom_archivo, 'r')
  64.    alumnos = archivo.readlines()
  65.  
  66.    tot_alumnos = len(alumnos)
  67.    while True:
  68.        clear()
  69.        nro_grupo = input('Ingrese Nro. Grupo (0 para salir): ')
  70.        if nro_grupo.isdigit():
  71.            if nro_grupo =='0':
  72.                break
  73.            else:
  74.                for indice in range(tot_alumnos):
  75.                    el_alumno = alumnos[indice]
  76.                    alumno_leido = el_alumno.split(' ')
  77.                    if alumno_leido[4]==nro_grupo:
  78.                        lista_grupo.append(alumno_leido)
  79.  
  80.                archivo.close()
  81.                print ('Nro. Apellido      Nombre    Materia  Grupo  Nota')
  82.                print('------------------------------------------')
  83.  
  84.                for alumno in lista_grupo:
  85.                    for data in alumno:
  86.                        print (data, end='     ')
  87.  
  88.                    print()
  89.                print()
  90.                print('Pulse <Intro para volver al menu>')
  91.                input()
  92.  
  93.  
  94.  
  95.  
  96. def agregar():
  97.    dato_alumno = []
  98.    while True:
  99.        clear()
  100.        nro_alumno = input('Ingrese Nro. de Alumno (0 para salir): ')
  101.        if nro_alumno.isdigit():
  102.            if nro_alumno =='0':
  103.                break
  104.            else:
  105.                alumno_encontrado = encontrar_alumno(nro_alumno)
  106.                if alumno_encontrado =='':
  107.                    #archivo = open(nom_archivo, 'a')
  108.                    apellido    = input('Ingrese Apellido   : ').capitalize()
  109.                    nombre      = input('Ingrese Nombre      : ').capitalize()
  110.                    materia     = input('Ingrese Materia    : ').capitalize()
  111.                    grupo       = input('Ingrese Grupo      : ')
  112.                    nota        = input('Ingrese Nota       :')
  113.                    dato_alumno.append(nro_alumno)
  114.                    dato_alumno.append(apellido)
  115.                    dato_alumno.append(nombre)
  116.                    dato_alumno.append(materia)
  117.                    dato_alumno.append(grupo)
  118.                    dato_alumno.append(nota)
  119.                    archivo = open(nom_archivo,"a")
  120.                    for data in dato_alumno:
  121.                        archivo.write(data+' ')
  122.                    archivo.write('\n')
  123.                    archivo.close()
  124.                    dato_alumno = []
  125.                else:
  126.                    print()
  127.                    input ('Nro de alumno ya existe, use otro.')
  128.  
  129.        else:
  130.            input ('Debe ser un numero, repita')
  131.  
  132.  
  133.  
  134. def lista():
  135.    clear()
  136.    archivo = open(nom_archivo,"r")
  137.    alumnos = archivo.read()
  138.    print ('Lista de Alumnos')
  139.    print ('-----------------')
  140.    print()
  141.    print (alumnos)    
  142.    print()
  143.    print('Pulse <Intro para volver al menu>')
  144.    input()
  145.    archivo.close()
  146.  
  147.  
  148. def consultar():
  149.    while True:
  150.        clear()
  151.        try:
  152.            num_alumno = input('Ingrese Nro de alumno a Consultar (0 para regresar): ')
  153.            if num_alumno=='0':
  154.                break
  155.            else:
  156.                alumno_encontrado = encontrar_alumno(num_alumno)
  157.                if alumno_encontrado !='':
  158.                    print ('Nro Alumno: ',alumno_encontrado[0])
  159.                    print ('Apellido  : ',alumno_encontrado[1])
  160.                    print ('Nombre    : ',alumno_encontrado[2])
  161.                    print ('Materia   : ',alumno_encontrado[3])
  162.                    print ('Nota      : ',alumno_encontrado[4])                                                
  163.                    print ()
  164.                    print('Pulse <Intro para volver al menu>')
  165.                    input()
  166.                    break
  167.                else:
  168.                    print ()
  169.                    print ('Alumno no encontrado')
  170.                    print ()
  171.                    print('Pulse <Intro para volver al menu>')
  172.                    input()
  173.                    break
  174.        except ValueError:
  175.            pass
  176.  
  177.  
  178. def menu():
  179.    while True:
  180.        clear()
  181.        try:
  182.            print('Menu Principal')
  183.            print('------------')
  184.            print()
  185.            print('1. Agregar Alumno')
  186.            print('2. Lista de Alumnos')
  187.            print('3. Consultar Alumno x nro.')
  188.            print('4. Consultar Alumno x Apellido.')
  189.            print('5. Consultar Grupo')
  190.            print('6. Salir')
  191.            print()
  192.            opcion = int(input('Ingrese opcion: '))
  193.            if opcion == 6:
  194.                break
  195.            elif opcion == 1:
  196.                agregar()
  197.            elif opcion == 2:
  198.                lista()
  199.            elif opcion == 3:
  200.                consultar()
  201.            elif opcion == 4:
  202.                consulta_ape()
  203.            elif opcion==5:
  204.                buscar_grupo()
  205.  
  206.        except ValueError:
  207.           pass
  208.  
  209.  
  210. if __name__ == "__main__":
  211.    nom_archivo = 'estudiantes.txt'
  212.    menu()
  213.  

Pero si remplazo todo por funciones me salen errores de todo tipo,y bueno puedo decir que ya estoy a nada de rendirme  :-[ >:D :-(

Espero haberme explicado correctamente

Gracias de antemano :xD
168  Programación / Scripting / Re: Ayuda con Ficheros en: 20 Enero 2021, 05:07 am
Hola, podes usar diccionarios para lo que deseas hacer, con uno solo sería suficiente.

Aquí te dejo un ejemplo de cómo usar un diccionario:

Código
  1.    datos = {}
  2.    nombre_apellido = input("Ingrese el nombre y el apellido: ")
  3.    numero = int(input("Ingrese el numero del estudiante: "))
  4.    materia = input("Ingrese la materia: ")
  5.    nota = input("Ingrese la nota: ")
  6.    datos["nombre_apellido"] = nombre_apellido
  7.    datos["numero"] = numero
  8.    datos["materia"] = materia
  9.    datos["nota"] = nota
  10.  


Saludos

Muchísimas gracias amigo  ;-)
169  Programación / Scripting / Re: Ayuda con Ficheros en: 20 Enero 2021, 05:06 am
una forma de leer cada línea sería:
Código
  1. def leer_archivo():
  2.    with open('estudiantes.txt') as archivo:
  3.        for linea in archivo:
  4.            print(linea)

ahora, en lo pèrsonal creo que tenés muchas cosas de más y tampoco entiendo porque guaradar los datos como listas.

Bien,lo voy a probar muchas gracias
En cuanto a esto
Citar
ahora, en lo pèrsonal creo que tenés muchas cosas de más y tampoco entiendo porque guaradar los datos como listas.

Me podrías decir que es lo que esta de más?
Y con lo de las listas,mi idea era ponerlas en un diccionario  ;D
170  Programación / Scripting / Re: Ayuda con Ficheros en: 19 Enero 2021, 17:59 pm
Código
  1. archivo = open("Estudiantes.txt", "r")
  2. print(archivo.read())

Usa geshi para colorear el código:
[code=python]archivo = open("Estudiantes.txt", "r")
print(archivo.read())[/code]


Hola,ya probé hacer eso y no me funcionó jejej
De todas formas muchas gracias
Páginas: 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
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines