15.12.2022 Views

Python Eficaz

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

class PosixDatabase(object):

# ...

if sys.platform.startswith('win32'):

Database = Win32Database

else:

Database = PosixDatabase

Da mesma forma, podemos usar variáveis de ambiente de os.environ para guiar

as definições de nosso módulo.

Lembre-se

• Os programas normalmente precisam rodar em múltiplos ambientes de

deploy que pedem, cada um, requisitos e configurações únicos.

• Podemos modificar os módulos para que usem conteúdos diferentes em

diferentes ambientes de deploy, escolhendo quando usar um ou outro com

comandos normais do Python no escopo do módulo.

• O conteúdo dos módulos pode ser o produto de qualquer condição externa,

incluindo introspecção pelos módulos sys e os.

Item 55: Use strings com a função repr para

depuração

Ao depurar um programa em Python, a função print 1 (ou a saída por meio do

módulo nativo logging) nos leva longe, para nossa surpresa. As entranhas do

Python são, na maioria das vezes, fáceis de acessar por atributos simples

(consulte o Item 27: “Prefira atributos públicos em vez de privativos”). Tudo o

que precisamos fazer é mostrar na tela (com print) as mudanças no estado do

programa durante sua execução, e prestar atenção caso algo dê errado.

A função print mostra na tela uma versão em string, legível para nós, humanos,

de qualquer coisa que forneçamos a ela. Por exemplo, usar print com uma string

básica mostrará na tela o conteúdo da string. O comando até mesmo toma o

cuidado de retirar as aspas.

print('foo bar')

www.full-ebook.com

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!