Python 3 - Método de busca () de arquivo
Descrição
O método seek()define a posição atual do arquivo no deslocamento. O argumento whence é opcional e o padrão é 0, o que significa posicionamento absoluto do arquivo, outros valores são 1 que significa busca em relação à posição atual e 2 significa busca em relação ao final do arquivo.
Não há reembolso. Observe que se o arquivo for aberto para anexar usando 'a' ou 'a +', qualquer operação de busca () será desfeita na próxima gravação.
Se o arquivo for aberto apenas para gravação no modo anexar usando 'a', este método é essencialmente um no-op, mas permanece útil para arquivos abertos no modo anexar com leitura ativada (modo 'a +').
Se o arquivo for aberto em modo texto usando 't', apenas offsets retornados por tell () são válidos. O uso de outros offsets causa um comportamento indefinido.
Observe que nem todos os objetos de arquivo são pesquisáveis.
Sintaxe
A seguir está a sintaxe para seek() método -
fileObject.seek(offset[, whence])
Parâmetros
offset - Esta é a posição do ponteiro de leitura / gravação dentro do arquivo.
whence - Isso é opcional e o padrão é 0, o que significa posicionamento absoluto do arquivo, outros valores são 1 que significa busca em relação à posição atual e 2 significa busca em relação ao final do arquivo.
Valor de retorno
Este método não retorna nenhum valor.
Exemplo
O exemplo a seguir mostra o uso do método seek ().
Assuming that 'foo.txt' file contains following text:
This is 1st line
This is 2nd line
This is 3rd line
This is 4th line
This is 5th line
#!/usr/bin/python3
# Open a file
fo = open("foo.txt", "r+")
print ("Name of the file: ", fo.name)
line = fo.readlines()
print ("Read Line: %s" % (line))
# Again set the pointer to the beginning
fo.seek(0, 0)
line = fo.readline()
print ("Read Line: %s" % (line))
# Close opened file
fo.close()
Resultado
Quando executamos o programa acima, ele produz o seguinte resultado -
Name of the file: foo.txt
Read Line: ['This is 1st line\n', 'This is 2nd line\n', 'This is 3rd line\n', 'This is 4th line\n', 'This is 5th line']
Read Line: This is 1st line