Latest web development tutorials

arquivo Python I / O

Este capítulo descreve apenas toda a S funções I básico /, mais funções, consulte a documentação padrão Python.

Imprimir em Tela

O método mais fácil é usar a saída de instrução de impressão, você pode passá-lo zero ou mais expressões separadas por vírgulas. Esta função converte a expressão você passar uma expressão de cadeia, eo resultado é escrito na saída padrão da seguinte forma:

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

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

Irá produzir os seguintes resultados na tela padrão:

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

Leia a entrada do teclado

Python fornece duas funções built-in para ler uma linha de entrada de texto do padrão, a entrada padrão padrão é o teclado. Como se segue:

  • raw_input
  • entrada

função raw_input

raw_input ([linha]) para ler uma linha da entrada padrão e retorna um string (caractere de nova linha removida):

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

Isto irá pedir-lhe para entrar em qualquer cadeia, e em seguida, exibe a mesma seqüência na tela. "Olá Python" Quando eu digito, sua saída é a seguinte:

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

função de entrada

([Linha]) ([linha]) função de entrada de função e raw_input substancialmente similares, mas a entrada pode receber uma expressão Python como entrada e retorna o resultado da operação.

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

Isto produz os seguintes resultados correspondentes à entrada:

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

Abrir e fechar arquivos

Você agora são capazes de ler e escrever para a entrada e saída padrão. Agora, dê uma olhada em como ler e gravar os arquivos de dados reais.

Python fornece as funções e os métodos necessários para padrão do funcionamento básico do arquivo. Você pode usar oarquivo de objetos que a maioria das operações de arquivo.

função de abertura

Você deve usar a função built-in de Python open () para abrir um arquivo, criar um objeto de arquivo e métodos relacionados podem invocá-lo a ler e escrever.

sintaxe:

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

Detalhes dos vários parâmetros é a seguinte:

  • file_name: variable file_name é uma cadeia que contém o valor que você deseja acessar um nome de arquivo.
  • access_mode: access_mode decidiu abrir o modo de arquivo: Ler, Escrever, acrescentando. Veja a lista completa de todos os valores possíveis da seguinte forma. Este parâmetro não-obrigatório, o modo de acesso de arquivo padrão é somente leitura (r).
  • tamponante: Se o valor de tamponamento é definido como 0, não haverá armazenamento. Se o valor do buffer tomar 1, ele irá registrar a linha ao acessar arquivos. Se o valor estiver definido buffer inteiro maior que 1, indicando o tamanho desse buffer é uma área de armazenamento. Se um valor negativo, o tamanho da zona de armazenamento de memória intermédia para o padrão do sistema.

Abra a lista completa dos diferentes modos de arquivo:

modo descrição
r Abra o arquivo em modo de somente leitura. arquivo ponteiro vai ser colocado no início do ficheiro. Este é o modo padrão.
rb Abrir um arquivo para somente leitura no formato binário. Vai apresentar ponteiro no início do arquivo. Este é o modo padrão.
r + Abrir um arquivo para leitura e escrita. Vai apresentar ponteiro no início do arquivo.
rb + Abrir um arquivo para leitura e escrita em formato binário. Vai apresentar ponteiro no início do arquivo.
w Abra um arquivo somente para escrita. Se o arquivo já existe ele será substituído. Se o arquivo não existir, criar um novo arquivo.
wb Abrir um arquivo para documentos em formato binário somente. Se o arquivo já existe ele será substituído. Se o arquivo não existir, criar um novo arquivo.
w + Abrir um arquivo para leitura e escrita. Se o arquivo já existe ele será substituído. Se o arquivo não existir, criar um novo arquivo.
wb + Abrir um arquivo para leitura e escrita em formato binário. Se o arquivo já existe ele será substituído. Se o arquivo não existir, criar um novo arquivo.
um Abra um arquivo para acrescentar. Se o ficheiro já existe, o ponteiro de arquivo será colocado no final do ficheiro. Em outras palavras, após o novo conteúdo será escrito para o conteúdo existente. Se o arquivo não existir, criar um novo arquivo para a escrita.
ab Abra um arquivo para anexar em formato binário. Se o ficheiro já existe, o ponteiro de arquivo será colocado no final do ficheiro. Em outras palavras, após o novo conteúdo será escrito para o conteúdo existente. Se o arquivo não existir, criar um novo arquivo para a escrita.
a + Abrir um arquivo para leitura e escrita. Se o ficheiro já existe, o ponteiro de arquivo será colocado no final do ficheiro. É o modo de o arquivo é aberto irá acrescentar. Se o arquivo não existir, criar um novo arquivo para leitura e escrita.
ab + Abra um arquivo para anexar em formato binário. Se o ficheiro já existe, o ponteiro de arquivo será colocado no final do ficheiro. Se o arquivo não existir, criar um novo arquivo para leitura e escrita.

Atributos de arquivo objeto

Depois que um arquivo é aberto, você tem um objeto de arquivo, você pode obter todos os tipos de informações sobre o arquivo.

A seguir está uma lista de todos os atributos de arquivo e objetos relacionados a:

propriedade descrição
file.closed Retorna true se o arquivo foi fechado, caso contrário, retorna false.
file.mode Voltar para o modo de acesso de arquivo aberto.
file.name Retorna o nome do arquivo.
file.softspace Se estiver usando a saída de impressão, deve ser seguido por um caractere de espaço, retorna false. Caso contrário, ele retorna true.

Os exemplos que se seguem:

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

Exemplos de saída acima:

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

fechar) método (

método close objeto File () para atualizar qualquer informação que não escrever buffer, e feche o arquivo, após o que já não pode ser escrito.

Ao fazer referência a um objeto de arquivo a ser re-atribuído a outro arquivo, Python irá fechar o arquivo anterior. Com o método close () para fechar o arquivo é um bom hábito.

sintaxe:

fileObject.close();

Exemplos:

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

Exemplos de saída acima:

文件名:  foo.txt

Ler e escrever arquivos:

objeto de arquivo fornece uma série de métodos nos permitem acessar arquivos mais facilmente. Veja como usar read () e write () métodos para ler e gravar arquivos.

método write ()

escrever () método para escrever um arquivo aberto a qualquer cadeia. É importante notar que, cordas Python podem ser dados binários, em vez de apenas texto.

write () método não adiciona uma nova linha no final da cadeia ( '\ n'):

sintaxe:

fileObject.write(string);

Aqui, os parâmetros são passados ​​está a ser escrito para abrir o conteúdo do arquivo.

Exemplos:

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

O método descrito acima cria arquivo foo.txt, e escreve o conteúdo dos documentos recebidos e, finalmente, fechar o arquivo. Se você abrir esse arquivo, você verá o seguinte:

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

leia método ()

read () método lê uma string de um arquivo aberto. É importante notar que, cordas Python podem ser dados binários, em vez de apenas texto.

sintaxe:

fileObject.read([count]);

Aqui, o argumento está sendo passado a partir da contagem de bytes de arquivo aberto ler. O método começou a partir do início do arquivo é lido, se nenhuma contagem de entrada, ele vai tentar ler tanto mais conteúdo, provavelmente até o final do arquivo.

Exemplos:

Aqui usamos o arquivo foo.txt criado acima.

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

Exemplos de saída acima:

读取的字符串是 :  www.w3big

local de arquivo:


Local do arquivo

dizer () método informa a localização atual dentro do arquivo; em outras palavras, a próxima leitura ou gravação ocorrerá após o início do arquivo tantos bytes.

procurar (offset [, a partir]) para alterar a localização do ficheiro actual. variável Deslocamento indica o número de bytes a ser movido. Do início ao mover variável byte especifica a posição de referência.

Se a partir é definido como 0, o que significa o início do arquivo como a posição de referência para mover bytes. Se definido como 1, a posição actual como a posição de referência. Se ele estiver definido como 2, então o final do arquivo será usado como a posição de referência.

Exemplos:

Em nossos arquivos criado acima 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()

Exemplos de saída acima:

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

Renomear e apagar arquivos

módulo os do Python fornece para ajudar a executar os métodos de operação de processamento de arquivos, como renomear e excluir arquivos.

Para usar este módulo, você deve primeiro importá-lo antes que você possa chamar as várias funções relacionadas.

renomear método ():

renomear () método requer dois parâmetros, o nome do arquivo atual eo novo nome do arquivo.

sintaxe:

os.rename(current_file_name, new_file_name)

Exemplos:

O exemplo a seguir irá renomear um arquivo que já existe test1.txt.

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

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

remover método ()

Você pode usar o método remove () para excluir o arquivo, você precisa fornecer o nome do arquivo a ser excluído como um parâmetro.

sintaxe:

os.remove(file_name)

Exemplos:

O exemplo a seguir irá excluir um arquivo que já existe test2.txt.

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

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

Python no diretório:

Todos os arquivos estão contidos em vários diretórios, mas Python pode facilmente manipular. módulo os Há muitas maneiras de ajudá-lo a criar, excluir e alterar diretórios.

mkdir () Método

Você pode usar o mkdir módulo os () método cria um novo diretório está no diretório atual. Você precisa fornecer um parâmetro que contém o nome do diretório a ser criado.

sintaxe:

os.mkdir("newdir")

Exemplos:

O exemplo a seguir cria um novo teste de diretório no diretório atual.

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

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

chdir () Método

Você pode usar o método chdir () para alterar o diretório atual. Um método parâmetro chdir () requer que você deseja definir como o nome do diretório do diretório atual.

sintaxe:

os.chdir("newdir")

Exemplos:

O exemplo a seguir irá introduzir "/ home / newdir" diretório.

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

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

getcwd () método:

getcwd () para exibir o diretório de trabalho atual.

sintaxe:

os.getcwd()

Exemplos:

O exemplo a seguir mostra o diretório atual:

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

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

rmdir () Método

rmdir () para excluir o diretório, o nome do diretório passado como um parâmetro.

Antes de excluir esse diretório e todo o seu conteúdo deve ser limpo em primeiro lugar.

sintaxe:

os.rmdir('dirname')

Exemplos:

É suprimido o seguinte "/ tmp / test" exemplo diretório. Nome completo do diretório compatível deve ser dada, caso contrário ele irá procurar o diretório no diretório atual.

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

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

Arquivos, diretórios, métodos relacionados

Três métodos podem ser uma importante fonte de arquivos e diretórios em sistemas operacionais Windows e Unix executar uma ampla gama de tratamento prático e manipulação, como segue:

  • Arquivo método de objeto : objeto de arquivo fornece uma série de métodos de manipulação de arquivos.
  • OS objecto : o fornecimento de um método para o processamento de uma série de ficheiros e directórios.