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.