Skip to content

Instantly share code, notes, and snippets.

@renzon
Last active May 2, 2016 14:15
Show Gist options
  • Save renzon/8c03251dc8e5cbd793041fab02b56108 to your computer and use it in GitHub Desktop.
Save renzon/8c03251dc8e5cbd793041fab02b56108 to your computer and use it in GitHub Desktop.
operações com arquivos
# Observaçoes:
# A palavra reservada with produz um gerenciador de contexto que irá fechar o arquivo
# para vc, então não precisa chamar o método close
# Veremos mais sobre o assunto em no curso Python para Quem Sabe Python ;)
# Ao escrever em modo string, melhor explicitar o encoding.
# Pode ser que ele use o encoding padrão do sistema e ao
# escrever em um computador e ler em outro de problema
with open('/tmp/fn', 'w', encoding='utf8') as fn:
fn.write('Café')
with open('/tmp/fb', 'wb') as fb:
# Definir o encode para ter certeza sobre qual a cadeia de bytes será produzida
texto = bytes("Café".encode('utf8'))
fb.write(texto)
with open('/tmp/fb', 'rb') as fb:
fbytes = fb.readline()
print("++BYTES++")
print(type(fbytes))
print(fbytes)
print('É possível transformar em unicode de novo:')
print(fbytes.decode('utf8'))
# Explicitar o encoding pelas mesmas razões descritas na escrita do arquivo
with open('/tmp/fn', 'r', encoding='utf8') as fn:
fnormal = fn.readlines()
print("++STR++")
print(type(fnormal))
print(fnormal)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment