12 bibliotecas Python que todos deveriam conhecer
Lista produtiva e útil de bibliotecas python
Existem algumas bibliotecas sorrateiras de python que poucas pessoas conhecem. Essas bibliotecas são realmente impressionantes para melhorar sua produtividade diária.
1- Começa
a instalação do pip começa
No que diz respeito às interfaces de usuário, a maioria dos programas Python começa como
aplicativos de linha de comando, e muitos permanecem assim. Faz sentido
oferecer a seus usuários a melhor experiência possível. Para tais programas, as opções são especificadas com argumentos de linha de comando, e a
biblioteca padrão do Python oferece a biblioteca argparse para ajudar nisso.
argparse é uma implementação robusta e sólida para processamento de linha de comando
, mas é um pouco verborrágico para usar. Por exemplo, temos aqui
um script extremamente simples que irá somar dois números passados
na linha de comando:
import begin
@begin.start(auto_convert=True)
def main(a: 'First value' = 0.0, b: 'Second value' = 0.0):
""" Add two numbers """
print(a + b)
pip instalar colorama
Muitos de seus programas Python de desktop serão usados apenas na
linha de comando, portanto, faz sentido fazer o possível para
melhorar a experiência de seus usuários o máximo possível. O uso
de cores pode melhorar drasticamente sua interface de usuário, e o colorama
torna muito fácil adicionar salpicos de cores em seus
aplicativos de linha de comando.
from colorama import init, Fore, Back, Style
init(autoreset=True)
messages = ['blah blah blah',(Fore.LIGHTYELLOW_EX + Style.BRIGHT
+ BACK.MAGENTA + 'Alert!!!'),'blah blah blah']
for m in messages:
print(m)
pip instalar pyqtgraph
python -m pyqtgraph.examples
A biblioteca de plotagem de gráficos mais popular em Python é matplotlib, mas
talvez você ainda não tenha ouvido falar da maravilhosa alternativa, pyqtgraph.
Pyqtgraph não é um substituto um-para-um para matplotlib; em vez disso,
oferece uma seleção diferente de recursos e, em particular, é excelente
para visualização interativa e em tempo real.
4. pywebview
O Pywebview fornece um comando de uma linha para
criar uma janela GUI que envolve uma janela nativa de “visualização da web” do sistema.
Ao combinar isso com um aplicativo da web Python como Flask ou Bottle, torna-
se muito fácil criar um aplicativo local com uma GUI, além de
aproveitar as mais recentes tecnologias de GUI desenvolvidas
no espaço do navegador. O benefício de usar o
widget de navegador nativo do sistema é que você não precisa distribuir um pacote de aplicativos potencialmente grande para seus usuários.
5. psutil
Psutil fornece acesso completo às informações do sistema. Aqui está um
exemplo simples de um relatório básico para a carga da CPU amostrada em 5 segundos:
import psutil
cpu = psutil.cpu_percent(interval=5, percpu=True)
print(cpu)
Watchdog é uma biblioteca multiplataforma de alta qualidade para receber notificações de alterações no sistema de arquivos. Essas notificações do sistema de arquivos
são um requisito fundamental em muitos aplicativos de automação, e
o Watchdog lida com todos os detalhes de nível baixo e multiplataforma de
notificações para eventos do sistema. E o melhor do Watchdog
é que ele não usa enquetes
7. ptpython
ptpython é uma interface de intérprete alternativa, oferecendo uma bela
experiência interativa em Python. Como tal, o ptpython é mais uma ferramenta
do que uma biblioteca para incluir em seus próprios projetos, mas que ferramenta! com interface básica
8. setas
Embora as opiniões sejam diferentes, há quem tenha achado o módulo de data/hora da biblioteca padrão confuso de usar. A própria documentação do módulo nos primeiros parágrafos explica o porquê: ele fornece
objetos ingênuos e conscientes para representar datas e horas. Os ingênuos
são a fonte de confusão, porque os desenvolvedores de aplicativos
cada vez mais se veem trabalhando em projetos nos quais os
fusos horários são extremamente importantes. O aumento dramático da infraestrutura de nuvem e dos aplicativos de software como serviço contribuiu para a
realidade de que seu aplicativo será executado com frequência em um fuso horário diferente
(por exemplo, em um servidor) daquele onde os desenvolvedores estão localizados e diferente novamente de onde seus usuários estão localizados.
import arrow
t0 = arrow.now()
print(t0)
t1 = arrow.utcnow()
print(t1)
difference = (t0 - t1).total_seconds()
print('Total difference: %.2f seconds' % difference)
parsedatetime é uma biblioteca maravilhosa com um foco dedicado: analisar texto em datas e horas. Como seria de esperar, pode ser obtido
com pip install parsedatetime. A documentação oficial é
muito semelhante à API, o que torna mais difícil do que deveria ser obter uma
visão geral rápida do que a biblioteca oferece, mas você pode ter uma boa
ideia do que está disponível navegando no extenso conjunto de testes.
import parsedatetime as pdt
cal = pdt.Calendar()
examples = [
"2016-07-16",
"2016/07/16",
"2016-7-16",
"2016/7/16",
"07-16-2016",
"7-16-2016",
"7-16-16",
"7/16/16",
]
print('{:30s}{:>30s}'.format('Input', 'Result'))
print('=' * 60)
for e in examples:
dt, result = cal.parseDT(e)
print('{:<30s}{:>30}'.format('"' + e + '"', dt.ctime()))
Há um interesse crescente na criação de bots e outros aplicativos de monitoramento e automação. Para esses aplicativos, um requisito comum é executar ações em horários ou
intervalos especificados. Essa funcionalidade é fornecida pelo módulo sched na biblioteca padrão. Já existem ferramentas semelhantes fornecidas
por sistemas operacionais, como o cron no Linux e o
Agendador de Tarefas do Windows, mas com o próprio módulo sched do Python você pode ignorar
essas diferenças de plataforma, além de incorporar tarefas agendadas
em um programa que pode ter muitas outras funções.
import sched
import time
from datetime import datetime, timedelta
scheduler = sched.scheduler(timefunc=time.time)
def saytime():
print(time.ctime())
scheduler.enter(10, priority=0, action=saytime)
saytime()
try:
scheduler.run(blocking=True)
except KeyboardInterrupt:
print('Stopped.')
pip instalar flit
flit é uma ferramenta que simplifica drasticamente o processo de envio de um
pacote Python para o Python Package Index (PyPI). O processo tradicional
começa criando um arquivo setup.py; simplesmente descobrir como
fazer isso requer uma quantidade considerável de trabalho até mesmo para entender
o que fazer. Por outro lado, o flit criará seu arquivo de configuração interativamente e, para pacotes simples típicos, você estará pronto para fazer o upload para o
PyPI quase imediatamente.
12. Boltons
A biblioteca boltons é uma coleção de propósito geral de módulos Python
que abrange uma ampla variedade de situações que você pode encontrar. A
biblioteca é bem conservada e de alta qualidade; vale a pena adicionar ao
seu conjunto de ferramentas.
12. Cython
Cython é uma ferramenta mágica! Como acontece com a maioria dos dispositivos mágicos, é difícil
descrever exatamente o que é. Cython é uma ferramenta que converte código-fonte Python em código-fonte C; esse novo código é então compilado em
um binário nativo vinculado ao tempo de execução do CPython.
13. impressionante-python
Finalmente, temos o awesome-python. Não é uma biblioteca, mas sim uma
lista enorme e com curadoria de bibliotecas Python de alta qualidade, abrangendo um grande
número de domínios. Se você ainda não viu esta lista, certifique-se
de reservar algum tempo antes de navegar, porque depois de começar, você terá
dificuldade em se desvencilhar!





































![O que é uma lista vinculada, afinal? [Parte 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)