Codificações de string implícitas / padrão do Python

Quando, onde e como o Python aplica implicitamente codificações em seqüências de caracteres ou faz transcodificações implícitas (conversões)?

E o que são essas codificações "padrão" (isto é, implícitas)?

Por exemplo, quais são as codificações:

de literais de string?

s = "Byte string with national characters"
us = u"Unicode string with national characters"

de cadeias de bytes quando convertidas em tipo para e de Unicode?

data = unicode(random_byte_string)

quando cadeias de bytes e Unicode são gravadas em / de um arquivo ou terminal?

print(open("The full text of War and Peace.txt").read())

questionAnswers(2)

yourAnswerToTheQuestion