Como instalar a versão alpha do Python no Debian testing através do repositório experimental

Se você precisa ou deseja usar a versão mais atual do Python no Debian testing, pode adicionar o repositório experimental.
É neste repositório que ficam os pacotes de software ainda em alpha, como é o caso, hoje, do Python 3.7 entre inúmeros outros softwares.

Antes de prosseguir, eu não saberia como enfatizar o suficiente: você pode danificar o seu sistema, se aplicar os procedimentos descritos neste post.
Você foi avisado.

“Misturar repositórios” é a maneira mais fácil e rápida de tornar o seu sistema totalmente inutilizável.
Se você precisa usar softwares em fase experimental ou, pelo menos, mais atualizados, o correto é usar outra distro, como o Debian unstable ou o Ubuntu (não-LTS) mais atual.

Para ter acesso aos pacotes, o que inclui as versões em desenvolvimento do Python, adicione a seguinte linha ao final do arquivo /etc/apt/sources.list:


deb http://deb.debian.org/debian experimental main

Em seguida, atualize os repositórios:


sudo apt update

Em seguida, é só instalar:


sudo apt install python3.7

[sudo] senha para justincase: 

Lendo listas de pacotes... Pronto
Construindo árvore de dependências       
Lendo informação de estado... Pronto
The following additional packages will be installed:
  libpython3.7-minimal libpython3.7-stdlib python3.7-minimal
Pacotes sugeridos:
  python3.7-venv python3.7-doc binfmt-support
Os NOVOS pacotes a seguir serão instalados:
  libpython3.7-minimal libpython3.7-stdlib python3.7 python3.7-minimal
0 pacotes atualizados, 4 pacotes novos instalados, 0 a serem removidos e 0 não atualizados.
É preciso baixar 4.071 kB de arquivos.
Depois desta operação, 22,5 MB adicionais de espaço em disco serão usados.
Você quer continuar? [S/n] 

Usar o alpha de um software é uma ótima forma de ajudar os desenvolvedores, se você pretende dar feedback sobre o seu uso e ajudar a resolver bugs.
Para todos os outros usuários, este repositório pode ser uma bela fonte de dor de cabeça.

Assinar blog por e-mail

Digite seu endereço de e-mail para assinar este blog e receber notificações de novas publicações por e-mail.

Junte-se a 47 outros assinantes

Como realçar a sintaxe do seu código Python na shell

bpython syntax highlight

Quando você está com o terminal aberto e rodando a shell do Python, é possível realizar muitos procedimentos com interpretação imediata do seu código.
bpython python 3 shell interface
Infelizmente, a shell padrão não tem o recurso de realce da sintaxe, encontrado nas IDEs ou nos editores de texto voltados para desenvolvedores.
A shell utiliza o mesmo esquema de cores padrão do seu terminal — seja no Mac ou no Linux.

Que tal usar uma shell diferente, então?

Neste artigo, vou apresentar o bpython, um software de interface para o interpretador interativo do Python, presente no seu sistema.
O aplicativo está disponível para sistemas operacionais, como o MacOS, Windows e Linux.

Os recursos do bpython

A ideia, de acordo com a documentação do programa, é dar ao usuário todos os recursos presentes na shell do Python e mais alguns benefícios encontrados nas IDEs ou editores para programação mais modernos.
Tudo isso sem abrir mão da leveza.

Veja alguns recursos do aplicativo:

  1. Realce de sintaxe, à medida em que você digita seus comandos. Igual ao seu editor de textos preferido.
  2. Auto complementação de comandos, funções e variáveis, com exibição de uma caixa de sugestões à medida em que você digita. Você pode usar a tecla Tab para aceitar uma sugestão que corresponda ao que você deseja digitar.
  3. Lista de parâmetros sensível ao contexto da função chamada na linha de comando.
    Ele faz uso do módulo inspect e da documentação do pydoc.
  4. Função Rewind ou rebobinamento. Tende a exibir sugestão de código que já foi usado.
    Em geral, é mais útil para definir classes e funções.

Como instalar o bpython

O método “universal” para instalar o aplicativo é através do PIP:


pip install bpython

Usuários Debian ou Ubuntu (GNU/Linux), podem fazer a instalação dos repositórios oficiais:


sudo apt install bpython

Se a sua distro Linux é baseada no Fedora, use o yum:


yum install bpython

Depois de instalado, é só executar:


bpython

Referẽncias

https://www.bpython-interpreter.org/downloads.html.

Assinar blog por e-mail

Digite seu endereço de e-mail para assinar este blog e receber notificações de novas publicações por e-mail.

Junte-se a 47 outros assinantes

Use o pydoc para obter ajuda rápida sobre o Python

Durante a fase de construção de um programa em Python, há várias formas de se obter ajuda rápida e, por vezes, contextual.
Algumas IDE’s possuem todo um sistema de consulta para o desenvolvedor, inclusive.
No terminal, em qualquer instalação comum do Python, é possível obter ajuda baseada na documentação oficial com o programa pydoc.
Basta dar a ele o nome do item para o qual você deseja obter ajuda.
No Linux/MacOS ou no FreeBSD, use-o assim:


pydoc input

Help on built-in function input in module __builtin__:

input(...)
    input([prompt]) -> value
    
    Equivalent to eval(raw_input(prompt)).

No Windows, caso a sua versão do Python seja a 3.6, use assim:


python3.6 -m pydoc input

Para sair do pydoc, tecle ‘q’.

Resumidamente, o pydoc pode fornecer informações sobre palavras-chave, tópicos, funções, módulos, pacotes etc.
Quando está em execução, tem um funcionamento semelhante ao programa man, presente em ambientes Linux/UNIX.
Você pode fazer buscas dentro da documentação com a opção -k:


pydoc -k string

cStringIO - A simple fast partial StringIO replacement.
strop - Common string manipulations, optimized for speed.
StringIO - File-like objects that read from or write to a string buffer.
UserString - A user-defined wrapper around string objects
distutils.versionpredicate - Module for parsing and testing package version predicate strings.
doctest - Module doctest -- a framework for running examples in docstrings.
encodings.string_escape - Python 'escape' Codec
lib2to3.fixes.fix_basestring - Fixer for basestring -> str.
lib2to3.pgen2.literals - Safely evaluate Python string literals without using eval().
string - A collection of string operations (most are no longer used).
stringold - Common string manipulations.
stringprep - Library that exposes various tables found in the StringPrep RFC 3454.
numpy.core.defchararray - This module contains a set of functions for vectorized string
numpy.lib._version - Utility to compare (NumPy) version strings.

Na lista acima, os tópicos em que o assunto “string” é abordado, na documentação do pydoc.

Rode um servidor pydoc

Para atender um maior número de desenvolvedores dentro da mesma rede, é possível colocar a documentação online.
Use o comando


sudo pydoc -p 80

[sudo] senha para justincase: 
pydoc server ready at http://localhost:80/

para por no ar um servidor com a documentação, acessível através (neste exemplo) do site “http://localhost:80”. Se a porta 80 estiver ocupada, use outra após a opção ‘-p’.

pydoc documentação python online

Para encerrar o servidor, pressione ^C (Ctrl + c) na linha de comando, onde você o ativou.
Se quiser enviar um tópico da documentação para um documento HTML, a ser usado em consulta posterior, dê o comando assim:


pydoc -w input

wrote input.html

Como você pode ver, acima, o comando cria um arquivo html com o conteúdo do tópico pedido.

Assinar blog por e-mail

Digite seu endereço de e-mail para assinar este blog e receber notificações de novas publicações por e-mail.

Junte-se a 47 outros assinantes