Python notas de estudio -Python archivo de E / S

Impresa a la pantalla

El método más sencillo es utilizar la salida de la sentencia de impresión, puede pasar de cero o más expresión separada por comas de él. Esta función convierte la expresión en que pase una expresión de cadena, y el resultado se escribe en la salida estándar es el siguiente:

#!/usr/bin/python
# -*- coding: UTF-8 -*- 

print "Python 是一个非常棒的语言,不是吗?"

Producirá los siguientes resultados en su pantalla por defecto:

Python 是一个非常棒的语言,不是吗?

Leer la entrada de teclado

Python proporciona dos funciones integradas de la línea de entrada estándar de texto, la entrada estándar por defecto es un teclado. De la siguiente manera:

  • Datos crudos
  • entrada

función raw_input (Python 2.X)

raw_input ([prompt]) función lee una línea desde la entrada estándar, y devuelve una cadena (la eliminación de la salto de línea final):

#!/usr/bin/python
# -*- coding: UTF-8 -*- 
 
str = raw_input("请输入:")
print "你输入的内容是: ", str

Esto le pedirá que introduzca cualquier cadena y luego muestra la misma cadena en la pantalla. Cuando escribo "! Hola Python", su salida es el siguiente:

请输入:Hello Python!
你输入的内容是:  Hello Python!

función de entrada

de entrada ([prompt])  de función y  raw_input ([PIE])  funciones sustancialmente similares a, pero una entrada de expresión Python puede ser recibida como entrada, y el resultado del cálculo se devuelve.

#!/usr/bin/python
# -*- coding: UTF-8 -*- 
 
str = input("请输入:")
print "你输入的内容是: ", str

Esto producirá los siguientes resultados correspondientes a la entrada:

请输入:[x*5 for x in range(2,10,2)]
你输入的内容是:  [10, 20, 30, 40]

Abrir y cerrar el archivo

Ahora que se puede leer y escribir en la entrada y salida estándar. Ahora, echar un vistazo a cómo leer y escribir los archivos de datos reales.

Python proporciona las funciones y los métodos de la operación básica de archivos por defecto necesarios. Puede utilizar el  archivo de  objetos hacen la mayoría de las operaciones de archivo.

función abierta

Debe utilizar la función incorporada de Python open () para abrir un archivo, crear un método asociado objeto de archivo que puede invocar a leer y escribir.

sintaxis:

file object = open(file_name [, access_mode][, buffering])

Los detalles de los diversos parámetros es la siguiente:

  • nombre_archivo: la variable nombre_archivo es un valor de cadena que contiene el nombre del archivo que desea acceder.
  • ACCESS_MODE: ACCESS_MODE decidió abrir el modo de archivo: leer, escribir, y adiciones. Ver lista completa de todos los valores posibles de la siguiente manera. sólo lectura modo de este parámetro no es obligatorio, el archivo predeterminado es de acceso (r).
  • búfer: Si el valor del búfer se establece en 0 , no habría de alojamiento . Si el valor del búfer tomar 1, la línea se registrará para acceder al archivo . Si el valor es un número entero mayor que 1 de almacenamiento en búfer, que indica que este es el tamaño del búfer de la zona de almacenamiento . Si se toma un valor negativo, el área de almacenamiento de tamaño de búfer para el sistema por defecto .

Abrir la lista completa de los diferentes modos de archivo: (b denota un binario)

modo descripción
t el modo de texto (por defecto).
X el modo de escritura, crear un nuevo archivo, si el archivo ya existe, error.
si El modo binario.
+ Abrir un archivo se actualiza (lectura y escritura).
la modo de ajuste universal (no recomendado).
r Abrir el archivo en modo de sólo lectura. archivo de puntero se coloca al principio del archivo. Este es el modo por defecto.
rb Abrir un archivo en formato binario de sólo lectura. El puntero del archivo se coloca al principio del archivo. Este es el modo por defecto. Generalmente se usa para los archivos no son de texto, como imágenes y así sucesivamente.
r + Abrir un archivo para lectura y escritura. El puntero del archivo se coloca al principio del archivo.
rb + Abre un archivo para lectura y escritura formato binario. El puntero del archivo se coloca al principio del archivo. Generalmente se usa para los archivos no son de texto, como imágenes y así sucesivamente.
w Abrir un archivo para escritura solamente. Si ya existe el archivo a continuación, abra el archivo y empezar a editar desde el principio, es decir, se eliminará el contenido original. Si no existe el archivo, cree un nuevo archivo.
wb Abrir un archivo para escritura sólo en formato binario. Si ya existe el archivo a continuación, abra el archivo y empezar a editar desde el principio, es decir, se eliminará el contenido original. Si no existe el archivo, cree un nuevo archivo. Generalmente se usa para los archivos no son de texto, como imágenes y así sucesivamente.
w + Abrir un archivo para lectura y escritura. Si ya existe el archivo a continuación, abra el archivo y empezar a editar desde el principio, es decir, se eliminará el contenido original. Si no existe el archivo, cree un nuevo archivo.
WB + Abre un archivo para lectura y escritura formato binario. Si ya existe el archivo a continuación, abra el archivo y empezar a editar desde el principio, es decir, se eliminará el contenido original. Si no existe el archivo, cree un nuevo archivo. Generalmente se usa para los archivos no son de texto, como imágenes y así sucesivamente.
una Abrir un archivo de datos anexados. Si el archivo ya existe, el puntero del archivo se coloca al final del archivo. En otras palabras, el nuevo contenido será escrito después del contenido existente. Si no existe el archivo, cree un nuevo archivo para escritura.
de Abrir un archivo en formato binario para adicional. Si el archivo ya existe, el puntero del archivo se coloca al final del archivo. En otras palabras, el nuevo contenido será escrito después del contenido existente. Si no existe el archivo, cree un nuevo archivo para escritura.
a + Abrir un archivo para lectura y escritura. Si el archivo ya existe, el puntero del archivo se coloca al final del archivo. Es el modo podría anexar al abrir el archivo. Si no existe el archivo, cree un nuevo archivo para la lectura y la escritura.
AB + Abrir un archivo en formato binario para adicional. Si el archivo ya existe, el puntero del archivo se coloca al final del archivo. Si no existe el archivo, cree un nuevo archivo para la lectura y la escritura.

La siguiente figura resume así este tipo de modelos:

modo r r + w w + una a +
Leer + +   +   +
Comentario   + + + + +
crear     + + + +
cubierta     + +    
Puntero al comienzo + + + +    
Al final del puntero         + +

propiedades de los objetos del archivo

Después se abre un archivo, usted tiene un objeto de archivo, se puede obtener diversa información sobre el archivo.

La siguiente es una lista de todas las propiedades y archivos de objetos relacionados con:

propiedad descripción
file.closed Devuelve true si el archivo se ha cerrado, de lo contrario falso.
file.mode Volver a los patrones de acceso a archivos abiertos.
nombre del archivo Devuelve el nombre del archivo.
file.softspace Si una salida de impresión, debe ser seguido por un carácter de espacio, devuelve false. De lo contrario, devuelve cierto.

Ejemplos siguientes:

#!/usr/bin/python
# -*- coding: UTF-8 -*-
 
# 打开一个文件
fo = open("foo.txt", "w")
print "文件名: ", fo.name
print "是否已关闭 : ", fo.closed
print "访问模式 : ", fo.mode
print "末尾是否强制加空格 : ", fo.softspace

Ejemplos de la salida anterior:

文件名:  foo.txt
是否已关闭 :  False
访问模式 :  w
末尾是否强制加空格 :  0

método close ()

método close objeto File () para actualizar la información no ha escrito ninguna memoria intermedia, y cierre el archivo, después de lo cual ya no se puede escribir.

Cuando se vuelve a asignar una referencia de objeto de archivo a otro archivo, Python cerrará el archivo antes. Cierre el archivo con un método close () es un buen hábito.

sintaxis:

fileObject.close()

Ejemplos:

#!/usr/bin/python
# -*- coding: UTF-8 -*-
 
# 打开一个文件
fo = open("foo.txt", "w")
print "文件名: ", fo.name
 
# 关闭打开的文件
fo.close()

Ejemplos de la salida anterior:

文件名:  foo.txt

Leer y escribir archivos:

objeto de archivo proporciona una serie de métodos, nos permiten acceder a archivos más fácilmente. Ver cómo utilizar el método de escritura () read () y para leer y escribir archivos.

método write ()

método de escritura () escribe la cadena puede ser cualquiera de un archivo abierto. Es importante señalar que, las cadenas de Python pueden ser datos binarios, en lugar de sólo texto.

método de escritura () no añade un carácter de nueva línea ( '\ n') al final de la cadena:

sintaxis:

fileObject.write(string)

在这里,被传递的参数是要写入到已打开文件的内容。

例子:

#!/usr/bin/python
# -*- coding: UTF-8 -*-
 
# 打开一个文件
fo = open("foo.txt", "w")
fo.write( "www.runoob.com!\nVery good site!\n")
 
# 关闭打开的文件
fo.close()

上述方法会创建foo.txt文件,并将收到的内容写入该文件,并最终关闭文件。如果你打开这个文件,将看到以下内容:

$ cat foo.txt 
www.runoob.com!
Very good site!

read()方法

read()方法从一个打开的文件中读取一个字符串。需要重点注意的是,Python字符串可以是二进制数据,而不是仅仅是文字。

语法:

fileObject.read([count])

在这里,被传递的参数是要从已打开文件中读取的字节计数。该方法从文件的开头开始读入,如果没有传入count,它会尝试尽可能多地读取更多的内容,很可能是直到文件的末尾。

例子:

这里我们用到以上创建的 foo.txt 文件。

#!/usr/bin/python
# -*- coding: UTF-8 -*-
 
# 打开一个文件
fo = open("foo.txt", "r+")
str = fo.read(10)
print "读取的字符串是 : ", str
# 关闭打开的文件
fo.close()

以上实例输出结果:

读取的字符串是 :  www.runoob

文件位置:


文件定位

tell()方法告诉你文件内的当前位置, 换句话说,下一次的读写会发生在文件开头多少字节之后

seek(offset [,from])方法改变当前文件的位置Offset变量表示要移动的字节数。From变量指定开始移动字节的参考位置

如果from被设为0,这意味着将文件的开头作为移动字节的参考位置。如果设为1,则使用当前的位置作为参考位置。如果它被设为2,那么该文件的末尾将作为参考位置

例子:

就用我们上面创建的文件foo.txt。

#!/usr/bin/python
# -*- coding: UTF-8 -*-
 
# 打开一个文件
fo = open("foo.txt", "r+")
str = fo.read(10)
print "读取的字符串是 : ", str
 
# 查找当前位置
position = fo.tell()
print "当前文件位置 : ", position
 
# 把指针再次重新定位到文件开头
position = fo.seek(0, 0)
str = fo.read(10)
print "重新读取字符串 : ", str
# 关闭打开的文件
fo.close()

以上实例输出结果:

读取的字符串是 :  www.runoob
当前文件位置 :  10
重新读取字符串 :  www.runoob

重命名和删除文件

Python的os模块提供了帮你执行文件处理操作的方法,比如重命名和删除文件。

要使用这个模块,你必须先导入它,然后才可以调用相关的各种功能。

rename()方法:

rename()方法需要两个参数,当前的文件名和新文件名。

语法:

os.rename(current_file_name, new_file_name)

例子:

下例将重命名一个已经存在的文件test1.txt。

#!/usr/bin/python
# -*- coding: UTF-8 -*-

import os
 
# 重命名文件test1.txt到test2.txt。
os.rename( "test1.txt", "test2.txt" )

remove()方法

你可以用remove()方法删除文件,需要提供要删除的文件名作为参数。

语法:

os.remove(file_name)

例子:

下例将删除一个已经存在的文件test2.txt。

#!/usr/bin/python
# -*- coding: UTF-8 -*-

import os
 
# 删除一个已经存在的文件test2.txt
os.remove("test2.txt")

Python里的目录:

所有文件都包含在各个不同的目录下,不过Python也能轻松处理。os模块有许多方法能帮你创建,删除和更改目录。

mkdir()方法

可以使用os模块的mkdir()方法在当前目录下创建新的目录们。你需要提供一个包含了要创建的目录名称的参数。

语法:

os.mkdir("newdir")

例子:

下例将在当前目录下创建一个新目录test。

#!/usr/bin/python
# -*- coding: UTF-8 -*-

import os
 
# 创建目录test
os.mkdir("test")

chdir()方法(CHange DIRectory)

可以用chdir()方法来改变当前的目录。chdir()方法需要的一个参数是你想设成当前目录的目录名称。

语法:

os.chdir("newdir")

例子:

下例将进入"/home/newdir"目录。

#!/usr/bin/python
# -*- coding: UTF-8 -*-

import os
 
# 将当前目录改为"/home/newdir"
os.chdir("/home/newdir")

getcwd()方法:(GET Current Working Directory)

getcwd()方法显示当前的工作目录

语法:

os.getcwd()

例子:

下例给出当前目录:

#!/usr/bin/python
# -*- coding: UTF-8 -*-

import os
 
# 给出当前的目录
print os.getcwd()

rmdir()方法(RoMove DIRectory)

rmdir()方法删除目录,目录名称以参数传递。

在删除这个目录之前,它的所有内容应该先被清除。

语法:

os.rmdir('dirname')

例子:

以下是删除" /tmp/test"目录的例子。目录的完全合规的名称必须被给出,否则会在当前目录下搜索该目录。

#!/usr/bin/python
# -*- coding: UTF-8 -*-

import os
 
# 删除”/tmp/test”目录
os.rmdir( "/tmp/test"  )

 

发布了19 篇原创文章 · 获赞 0 · 访问量 809

Supongo que te gusta

Origin blog.csdn.net/weixin_44151772/article/details/104035316
Recomendado
Clasificación