Python --- Apertura, lectura y escritura de archivos

abrir archivo abierto()

Abra un archivo existente o cree un archivo nuevo

Sintaxis: open(nombre, modo, codificación)

nombre: es una cadena del nombre del archivo de destino que se abrirá (puede incluir la ruta específica donde se encuentra el archivo).
modo: establece el modo de apertura del archivo (modo de acceso): r: solo lectura, w: escritura, a: agregar, etc.
codificación: formato de codificación (se recomienda UTF-8)

ejemplo:

f = open('test.txt', 'r', encoding="UTF-8")  # 注意:编码格式需要用关键字作为参数传递
print(type(f))   # <class '_io.TextIOWrapper'>

leer archivo 

Método read(): lee la longitud de los datos.

Sintaxis: archivo objeto.read(num) ----- Resultado: cadena

num representa la longitud de los datos que se leerán del archivo (la unidad es bytes). Si no se pasa num, significa leer todos los datos del archivo.

ejemplo:

f = open('test.txt', 'r', encoding="UTF-8") 
print(f"读取10个字节的结果{f.read(5)}")    # 读取内容:我是测试文
print(f"read方法读取全部内容是{f.read()}")  # 注意:这次会接着上一次接着读取
Método readlines(): Leer todo ------ Resultado: lista

Sintaxis: archivo objeto.readlines()

readlines puede leer el contenido de todo el archivo línea por línea a la vez y devuelve una lista en la que los datos de cada línea son un elemento.

ejemplo:

f = open('test.txt', 'r', encoding="UTF-8")
print(f"read方法读取全部内容是{f.read()}")  # 读取全部
lines= f.readlines()
print(type(lines))  # <class 'list'>
print(lines)        # 空值,原因:第2行已经读取了全部
Método readline(): lee una línea a la vez    ----- resultado: cadena

Sintaxis: archivo objeto.readlines()

ejemplo:

f = open('test.txt', 'r', encoding="UTF-8")
line1 = f.readline()
print(type(line1),line1)    # <class 'str'> 我是测试文件1 (读取一行内容)
for loop lee líneas de archivo

ejemplo:

# f = open('test.txt', 'r', encoding="UTF-8")
# for line2 in f:
#     print(line2)  # 读取每一行数据

for line3 in open("test.txt","r",encoding="UTF-8"):
    print(line3)   # 读取每一行数据
Cerrar el archivo close() --- Desocupar el archivo

Sintaxis: archivo objeto.close()

con sintaxis abierta

Sintaxis: con open(nombre,modo,codificación) como nombre de archivo:

Al operar el archivo en el bloque de declaración with open, el archivo cerrado se puede cerrar automáticamente una vez completada la operación para evitar olvidar el método de cierre.

ejemplo:

with open('test.txt', 'r', encoding="UTF-8") as f:
    for line4 in f:
        print(line4)

 Escritura de archivos escribir()   

Si el archivo existe, se sobrescribirá. Si el archivo no existe, se creará.

Sintaxis: archivo object.write()   --- abre el archivo a través del modo w

Aviso:

Cuando se llama directamente a write, el contenido en realidad no se escribe en el archivo, sino que se acumula en la memoria del programa, llamado buffer. Cuando se llama a
flush, el contenido en realidad se escribe en el archivo.
Esto es para evitar operaciones frecuentes en el disco duro, lo que conduce a la ineficiencia Rechazar (guardar un montón y escribir en el disco a la vez)

Actualización de archivos vaciado()

Sintaxis: archivo objeto.flush()

ejemplo:

# f = open("test.txt", "w", encoding="UTF-8")
# f.write("hello")    # 文件写入:内容写入内存中
# f.flush()           # 文件刷新:将内存中积攒的内容,写入到硬盘的文件中
# f.close()           # 关闭文件:内置了flush()功能

f = open("test.txt", "w", encoding="UTF-8")
f.write("你好")  # 会覆盖吧上面写入的内容

Operación de agregar archivo escribir () 

Sintaxis: archivo object.write() --- abre el archivo a través de un modo

open("test.txt","a",encoding="UTF-8")
f.write("\nhi1")   # 换行输入
f.flush()
f.close()

Pequeña caja:

#  小案例
fr = open("test.txt", "r", encoding="UTF-8")
fw = open("test1.txt", "a", encoding="UTF-8")
for i in fr:
    # print(i)
    if i.count("测试") >= 1:
        continue
    else:
        fw.write(i)
print(fw)
fr.close()
fw.close()




# fr = open("test.txt", "r", encoding="UTF-8")
# fw = open("test1.txt", "a", encoding="UTF-8")
# for i in fr:
#     line = i.strip()   # 去除换行符
#     if line.split(",")[4] == "测试":   # 以 , 分割字符串
#         continue
#     else:
#         fw.write(line)
#         fw.write("\n")   # 添加换行符
# fr.close()
# fw.close()

Supongo que te gusta

Origin blog.csdn.net/weixin_52053631/article/details/132924640
Recomendado
Clasificación