Cambiar la edad de Wang Wu a 17 años en Python
Los archivos de valores separados por comas (CSV, a veces también llamados valores separados por caracteres, porque el carácter separador no necesita ser una coma) almacenan datos tabulares (números y texto) en texto sin formato.
2. Dos formas de leer archivos csv
2.1 lectura del lector
importar csv
con open("student. csv", "r") as f:
# lector es un iterador
lector = csv.reader(f)
títulos = siguiente(lector ) # Saltar título línea
para x en el lector:
nombre = x[0]
edad = x[1]
print("Nombre : %s" %name, "Edad: %s" %age)
Resultado de salida: Nombre: Wang Wu Edad: 17
Si usa el lector para leer, hay un Problema al obtener datos, las columnas se obtienen a través de subíndices. Ahora la primera columna es el nombre. Si cambio la primera columna a la columna de identificación, habrá problemas en la adquisición de datos, por lo que existe DictReader. 2.2 Lectura de DictReader
Si desea obtener los datos a través del título, puede utilizar DictReader.
age-python">importar csv
con open("student.csv","r") como f:
#Usa el lector creado por El objeto DictReader no contendrá los datos de la fila del título. El lector es un iterador. Recorre este iterador y devuelve un diccionario
lector = csv.DictReader(f)
para x en el lector:
valor = {"Nombre":x["nombre"],"Edad":x["edad"]}
imprimir(valor)
Salida resultados:
{'Nombre': 'Wang Wu', 'Edad': '17'}
Dos formas de escribir archivos 3.csv
p>3.1 escritor escribiendo
importar csv
título = ["empno","ename","owner"]
valor = [
]
con open("emp.csv", "w", encoding="utf-8", newline='') como f: # La nueva línea predeterminada es\ n
escritor = csv.writer(f)
escritor.writerow(título)
escritor.writerows(valor)
Ejecutar el resultado final:
Procesamiento de archivos U22_csv del rastreador Python3
3.2 Escritura en DictWriter
importar csv
título = ['empno',' ename','owner ']
valor = [
{'empno':'A001','ename':'Guan Yu','propietario':'Liu Bei'},
{'empno':'A002','ename':'Zhang Fei','propietario':'Liu Bei'},
{'empno':'A003', 'ename ':'Xiahou Dun','propietario':'Cao Cao'},
{'empno':'A004','ename':'Guo Jia','propietario':'Cao Cao' } ,
]
con open("emp.csv", "w", encoding="utf-8", newline='') como f: # La nueva línea predeterminada es \n
escritor = csv.DictWriter(f,title)
# Para escribir el encabezado, simplemente llame al método writeheader() directamente
escritor. writeheader()
escritor.writerows(valor)