¡Te damos la bienvenida a este reto!

1

Empezando con Python desde 0

Día 1

2

Variables, funciones y sintaxis básica

3

Tipos de datos: Numbers, Strings y Diccionarios

4

Playground - Retorna el tipo

Día 2

5

Operadores

6

Playground - Calcula la propina

Día 3

7

Condicionales

8

Playground - Averigua si un año es bisiesto

9

Ciclos

10

Playground - Dibuja un triangulo usando bucles

Día 4

11

Listas

12

Encuentra a los gatitos más famosos

13

Diccionarios

14

Obtén el promedio de los estudiantes

15

Tuplas

16

Obten la información de los paquetes

Día 5

17

Calcula la cantidad de letras en una oración

18

Encuentra el mayor palíndromo

Día 6

19

Sets

20

Encuentre la intersección de conjuntos

Día 7

21

List comprehension

22

Encuentra palabras con dos vocales

23

Dictionary Comprehension

24

Calcula la longitud de las palabras

Día 8

25

Funciones Lambda

26

Filtra mensajes de un user específico

27

Higher order functions

28

Crea tu propio método map

Día 9

29

Manejo de Errores y excepciones

30

Maneja correctamente los errores

31

Maneja las excepciones

Día 10

32

Playground - Crea un task manager usando closures

Día 11

33

Lectura de archivos de texto y CSV

Día 12

34

Programación orientada a objetos

35

Crea un auto usando clases

Día 13

36

Abstracción en Python

37

Playground - Crea un sistema de carrito de compras

38

Encapsulamiento en Python

39

Playground - Encapsula datos de los usuarios

Día 14

40

Herencia en Python

41

Playground - Jerarquía de animales usando herencia

Día 15

42

Polimorfismo en Python

43

Playground - Implementa un sistema de pagos

Día 16

44

Estructuras de datos en Python

45

Playground - Crea tu propia lista en python

46

Hash tables en Python

47

Playground - Implementación de una HashTable para Contactos

Día 17

48

Maps en Python

49

Playground - Crea un task manager con Maps

Día 18

50

Singly Linked List en Python

51

Playground - Implementación de una singly linked list

Día 19

52

Stacks en Python

53

Playground - Implementación de un stack

Día 20

54

Queues en Python

55

Playground - Implementación de una queue

Día 21

56

¡Lo lograste!

Lectura de archivos de texto y CSV

33/56

Lectura

La lectura de archivos de texto en Python es una tarea común en el procesamiento de datos y la manipulación de archivos. Python proporciona varias formas de leer archivos de texto, lo que nos permite acceder y utilizar la información contenida en ellos. Aquí tienes una descripción detallada de cómo leer archivos de texto en Python:

...

Regístrate o inicia sesión para leer el resto del contenido.

Aportes 5

Preguntas 0

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

Te recomiendo ver esta clase de David Aroesti para complementar.
Clase 32: Crud con Python
El curso completo recomendadísimo, solo si ya has hecho estos cursos:

Éxitos 🙌

Aqui dejo un ejercicio que hice para recordar el manejo de archivos csv.

#creando manualmente un csv
archivo = open('archivo_csv.csv', 'w')
encabezado='"id", "nombre", "edad", "direccion"'
archivo.write(encabezado + '\n')
for i in range(100):
    archivo.write('{},"usuario{}",{},"calle {}, carrera {}"\n'.format(i, i, 30 + (i % 10), 100 + i, 200 - i))
archivo.close()

el archivo queda de esta manera:

94,"usuario94",34,"calle 194, carrera 106"
95,"usuario95",35,"calle 195, carrera 105"
96,"usuario96",36,"calle 196, carrera 104"
97,"usuario97",37,"calle 197, carrera 103"

Ahora lo leemos se importa el modulo csv

import csv
archivo = open('archivo_csv.csv', 'r')
csv_reader = csv.reader(archivo)
for fila in csv_reader:
    print(fila)
archivo.close()

La funcion csv.reader devuelve una coleccion cuyos miembros son listas y todos los campos del archivo son tratados como strings.

['id', ' "nombre"', ' "edad"', ' "direccion"']
['0', 'usuario0', '30', 'calle 100, carrera 200']
['1', 'usuario1', '31', 'calle 101, carrera 199']
['2', 'usuario2', '32', 'calle 102, carrera 198']
['3', 'usuario3', '33', 'calle 103, carrera 197']
['4', 'usuario4', '34', 'calle 104, carrera 196']

Ahora queremos obtener una lista de diccionarios. Aqui es clave la primera linea del archivo csv.

archivo = open('archivo_csv.csv', 'r')
csv_dict_reader = csv.DictReader(archivo)
lista_diccionarios = list(csv_dict_reader)
for i in range(10,20):
    print(lista_diccionarios[i])

archivo.close()

La funcion csv.DictReader devuelve una coleccion cuyos miembros son diccionarios. Los keys son sacados de la primera linea del archivo csv y los values son sacados como strings de las lineas 2 en adelante del archivo csv.

{'id': '12', ' "nombre"': 'usuario12', ' "edad"': '32', ' "direccion"': 'calle 112, carrera 188'}
{'id': '13', ' "nombre"': 'usuario13', ' "edad"': '33', ' "direccion"': 'calle 113, carrera 187'}
{'id': '14', ' "nombre"': 'usuario14', ' "edad"': '34', ' "direccion"': 'calle 114, carrera 186'}
{'id': '15', ' "nombre"': 'usuario15', ' "edad"': '35', ' "direccion"': 'calle 115, carrera 185'}
{'id': '16', ' "nombre"': 'usuario16', ' "edad"': '36', ' "direccion"': 'calle 116, carrera 184'}
{'id': '17', ' "nombre"': 'usuario17', ' "edad"': '37', ' "direccion"': 'calle 117, carrera 183'}

Resumen:

  1. open => Abrir
    open(“lista_compras.txt”, mode=“r”)
    Se puede omitir el mode=
    Hay modos de apertura como:
    “w” de “write” que significa escribir.
    “a” de appending que significa añadir o anexar (al final).
    “b” para guardar objetos

  2. read => Leer

  3. readLine => Leer linea

  4. readLines => Leer lineas

  5. close => cerrar

  6. with => Con

Datos.csv

Nombre,Edad,Profesión
Juan,30,Ingeniero
María,25,Médico
Carlos,28,Abogado
import csv

def read_csv_file(filename):
    try:
        with open(filename, 'r') as file:
            reader = csv.reader(file)
            data = list(reader)
            return data
    except FileNotFoundError:
        return "El archivo no existe."
    except IOError:
        return "Error al leer el archivo."

# Nombre del archivo CSV que queremos leer
archivo = "datos.csv"

# Llamamos a la función para leer el archivo CSV
contenido = read_csv_file(archivo)

# Mostramos el contenido del archivo CSV
for row in contenido:
    print(row)

Resultado de la ejecución del programa:

['Nombre', 'Edad', 'Profesión']
['Juan', '30', 'Ingeniero']
['María', '25', 'Médico']
['Carlos', '28', 'Abogado']

usando pickles y archivos de texto

import pickle
import sys

try:

    file = open("archivo.txt", "w", encoding="utf-8")
    file.write("Imprimiendo cuadrado de números\n")
    lstnumbers = [9,2,3,4,7]

    file.write(str(lstnumbers))

    with open("archivo.txt", "wb") as tfile:
        pickle.dump(lstnumbers,tfile)

    with open ('archivo.txt', 'rb') as tempfile:
        items = pickle.load(tempfile)
 
    lstsquare=[]
    for element in lstnumbers:
        file.write(f"\nnúmero: {element}, su cuadro es {element**2}")
        lstsquare.append(element**2)
    file.write("\n")

    file.write(str(lstsquare))

    print("Leyendo desde un archivo plano..\n")

    file = open('archivo.txt', 'r', encoding="utf-8")
    print(file.readline())
    print(file.readline())
    file.close()

    file = open('archivo.txt', 'r', encoding="utf-8")
    #lee todo el archivo plano
    print(file.read())
    
finally:
    file.close()


#content = file.read()
#print(content)