Autor Tema: [Python] Código para leer todas las líneas de un archivo y mostrar X línea  (Leído 1057 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado Príncipe_Azul

  • [L2] Conociendo BomberCode
  • **
  • Mensajes: 111
    Ingreso: Julio de 2015
  • Sexo: Masculino
  • ar
  • Colaborador
    • Ver Perfil
    • Foro ArgentinaIRC - Ayuda de Programación General, IRC y mIRC Scripting
Hola compañeros!!

Voy a compartir el método que yo utilizo para leer todas las líneas de un archivo de texto y también para mostrar una X línea, estas dos acciones se hacen sin utilizar ningún bucle (por lo menos no existe el bucle en el código fuente del programa).
 
Quiero comentar que aporto esto porque he leído en varios foros que muchas personas quieren leer una o varias líneas de un archivo de texto o que desean saber el total de líneas de un archivo, pero no quieren (por alguna razón tonta) usar un bucle.
 
Yo siempre recomendaré el bucle, aunque este código que les pasaré es practicamente lo mismo que usar un bucle.
 
Me gustan los foros porque puedo apreciar a muchas personas que dedican horas de su vida en compartir códigos, respuestas, explicaciones y ayuda, eso me alegra y me anima a seguir.
 
Bueno compañeros el código es este:
 
Código: [Seleccionar]
# -*- coding: utf-8 -*-
 
# Creación e idea por Príncipe_Azul
 
Archivo_Palabras = open("Palabras.txt", "r")
Palabras1 = Archivo_Palabras.read()
Archivo_Palabras.close()
Palabras = Palabras1.splitlines()

print Palabras[0] # Linea 1 Devuelve hola1
print Palabras[9] # Linea 10 Devuelve hola10
print Palabras[17] # Linea 18 Devuelve hola18
print
print ("El archivo tiene %d líneas" % len(Palabras)) # Total de lineas

raw_input()

Y el contenido del archivo Palabras.txt (el que uso en el código de ejemplo) es este:

hola1
hola2
hola3
hola4
hola5
hola6
hola7
hola8
hola9
hola10
hola11
hola12
hola13
hola14
hola15
hola16
hola17
hola18
hola19
hola20

 
algo tonto el contenido, pero bueno, es solamente para que puedan comprobar que mi método funciona perfectamente, es lo mismo que usar for, yo la verdad, uso for o while, pero he probado de varias formas este código, osea con diferentes contenidos en el interior del archivo Palabras.txt y siempre funcionó perfectamente!!
 
La verdad para saber la cantidad de líneas de un archivo sin usar bucles, está bárbaro, muy bueno!! es mi opinión.
 
Bueno amigos!! Espero que les sirva!! :)
 
Gracias a todos y que tengan buen día!!

Desconectado Rock Lee

  • Administrador
  • *
  • Mensajes: 1121
    Ingreso: Enero de 2014
  • Sexo: Masculino
  • ar
  • Digitalizando tu Mundo
    • Ver Perfil
    • La nueva era del conocimiento
Si lo hubiera tenido cuando cursaba me hubiera ahorrado mucho tiempo en verdad xD espero muchos le sirva esto!


Saludos Familia!

Desconectado Príncipe_Azul

  • [L2] Conociendo BomberCode
  • **
  • Mensajes: 111
    Ingreso: Julio de 2015
  • Sexo: Masculino
  • ar
  • Colaborador
    • Ver Perfil
    • Foro ArgentinaIRC - Ayuda de Programación General, IRC y mIRC Scripting
La verdad que si ayuda bastante y evita el bucle, por ejemplo si usaramos el bucle for para leer las miles de líneas que puede contener un archivo, vamos a tener que parar ese bucle for o while con un break en el caso de que se lo necesite, y como muchos sabran usar break no es algo recomendable... es romper la ejecución de un programa de manera medio bruta, sin embargo se lo puede utilizar y no dará problemas.

Saludos amigaso!! :)

Desconectado Rock Lee

  • Administrador
  • *
  • Mensajes: 1121
    Ingreso: Enero de 2014
  • Sexo: Masculino
  • ar
  • Digitalizando tu Mundo
    • Ver Perfil
    • La nueva era del conocimiento
La verdad que si ayuda bastante y evita el bucle, por ejemplo si usaramos el bucle for para leer las miles de líneas que puede contener un archivo, vamos a tener que parar ese bucle for o while con un break en el caso de que se lo necesite, y como muchos sabran usar break no es algo recomendable... es romper la ejecución de un programa de manera medio bruta, sin embargo se lo puede utilizar y no dará problemas.

Saludos amigaso!! :)

Yo no soy muy de usar el for, mas necesitaba sacarlo rápido utilizo casi siempre while y el break... y chau! aunque estaba mal hacerlo de esa manera pero debido a ciertas circunstancias me lo dejo pasar x) pero también cada uno lo hace al estilo le parezca mejor!


Saludos Familia!