Last active
May 2, 2016 14:15
-
-
Save renzon/8c03251dc8e5cbd793041fab02b56108 to your computer and use it in GitHub Desktop.
operações com arquivos
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# 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