Algumas dicas úteis para praticar Python

Olá Habr! Hoje, ofereço uma tradução de um artigo da Duomly sobre o estudo e a prática da programação em Python.


1. Introdução


Aprender Python não é muito diferente de aprender outras linguagens de programação. Uma maneira de se tornar um profissional em Python (ou em qualquer outro idioma) depende principalmente de sua experiência e conhecimento. Isso significa que os programadores experientes já estão familiarizados com os conceitos básicos de programação, enquanto os comuns usam métodos diferentes para resolver problemas quando não são iniciantes.


Não importa o que aconteça, há várias coisas comuns a todos, uma delas é que você precisa praticar, praticar muito!


Felizmente, o Python tem uma comunidade ampla, amigável e comunicativa. Esses são projetos de código aberto que realmente ajudam no desenvolvimento.


Há muitas boas dicas sobre como praticar Python. Este artigo abordará apenas 10 deles:


  • Escolha o ambiente certo
  • Verifique se você tem uma base suficiente para aprender coisas mais complexas.
  • Escreva e melhore o código
  • Leia a documentação
  • Aprenda coisas mais complicadas depois do básico
  • Siga os padrões, dicas e truques do Python
  • Analise o código fonte
  • Seja interessado em bibliotecas
  • Torne-se parte da comunidade
  • Aprenda uma segunda linguagem de programação

Escolha o ambiente certo


Para começar, você deve usar o Python 3 regular e o gerenciador de pacotes no sistema operacional que está usando. Windows, Mac OS ou qualquer distribuição Linux é adequada para isso. (Mesmo Android com QPython, embora as possibilidades sejam limitadas em comparação com o Python original). Posteriormente, você pode instalar o Anaconda no Windows, Mac OS ou Linux. Ele contém um interpretador Python, um pacote Conda, dependências e um gerenciador de pacotes. Com ele, você pode encontrar muitas bibliotecas de terceiros que podem lhe parecer úteis.


Você deve selecionar o IDE (ambiente de desenvolvimento integrado) apropriado. Os IDEs mais populares, como Visual Studio, VSCode, Emacs, Vim, Sublime Text, etc., têm realmente um bom suporte para Python. Se você gosta dos produtos JetBrains, pode tentar usar o PyCharm.
Também está incluído no pacote de distribuição do Anaconda um IDE chamado Spyder.


O IPython e o Jupyter Notebook são boas ferramentas que oferecem funcionalidade interativa conveniente. Há também um intérprete interativo de Python, mas você pode achar mais útil verificar trechos simples de código do que escrever programas grandes.


Você também pode ver este artigo para saber mais sobre o IDE do Python.
Entre outras coisas, é uma boa idéia instalar e configurar linters para Python (Pylint, flake8 e outros). São pequenos pacotes que simplesmente destacam os problemas do seu código (sintaxe ou relacionados à não conformidade com o estilo de programação em Python - PEP8).


Verifique se você tem uma base suficiente para aprender coisas mais complexas.


Se você quer aprender alguma linguagem de programação, precisa estudar bem para aprender o básico sobre o qual construirá sua carreira nessa linguagem. Isso significa que você precisa pelo menos conhecer: a sintaxe básica da linguagem, entender os conceitos básicos de programação, familiarizar-se com tipos e estruturas de dados padrão e assim por diante.


No Python, você deve entender as construções condicionais ( if , else, elif ), loops ( for , while ), funções, números, strings, tuplas, conjuntos, listas, dicionários e assim por diante. Alguns outros tipos de dados, como números complexos, tuplas nomeadas, conjuntos imutáveis, também podem ser úteis.


Você deve encontrar o livro certo para o seu nível sobre Python.
Duomly oferece um tutorial em Python que você pode usar para aprender esses conceitos e muito mais.
Você também pode começar com um tutorial no site oficial.


Escreva e melhore o código


Escrever muito código para si mesmo é parte integrante do aprendizado de linguagens de programação.
Comece com o código de livros e tutoriais. Em seguida, tente modificá-lo, por exemplo, para simplificá-lo ou mais adequado para algum propósito. Depois disso, tente escrever seus próprios programas pequenos, mas úteis.
Mas o mais importante, lembre-se de uma das coisas mais importantes sobre programação: não se trata de digitar código, é de entender!


Você cometerá erros. Todos os programadores fazem isso. E isso não é ruim. O mais importante é descobrir o que deu errado e, é claro, não repetir esses erros no futuro. Cada vez que você recebe e corrige um bug, você se torna um programador um pouco melhor do que era antes.
Às vezes, é importante voltar ao código antigo e tentar melhorá-lo. Espero que você veja onde você se tornou melhor do que quando escreveu este código.


Pense nos problemas que você gostaria de resolver. Idealmente, esses são os assuntos pelos quais você é apaixonado. O investimento emocional geralmente melhora os resultados. Inicie seus projetos pequenos e médios e tente aprimorá-los o mais rápido possível. Depois de aprender algo novo, pergunte-se como você pode aplicá-lo ao problema que deseja resolver.


Leia a documentação


A documentação é muito importante em Python. Você deve criar o hábito de lê-lo com frequência. Será ideal, antes de usar qualquer função ou método existente, ler a documentação sobre ela.


Felizmente, a biblioteca padrão do Python e a maioria das bibliotecas populares de terceiros têm boa documentação detalhada disponível em seus sites. Você também pode obter documentação sobre o objeto Python (classe, método etc.) programaticamente usando o atributo .doc:


 >>> print(slice.__doc__) slice(stop) slice(start, stop[, step]) Create a slice object. This is used for extended slicing (eg a[0:10:2]). 

A documentação pode conter mais detalhes em alguns pontos.


Você pode aprender muito com a documentação. Você pode ver como usar uma função, método ou classe, quais argumentos você precisa passar, quais retornarão a chamada de função e assim por diante. Também contém frequentemente exemplos relacionados que podem ser mais informativos e, às vezes, instrutivos.


Aprenda coisas mais complicadas depois do básico


Depois de entender o básico, você pode começar a aprender coisas mais complexas. Não se preocupe, você não esquecerá o básico. Você sempre precisará deles.


Tópicos como manipulação de exceções, argumentos de desempacotamento e empacotamento, * args e ** kwargs, decoradores, módulos e pacotes, OOP e geradores são frequentemente usados ​​e você precisa conhecê-los e compreendê-los em um bom nível.
Há também muitos tópicos avançados que precisam ser estudados. Por exemplo, métodos mágicos, corotinas, programação assíncrona, multithreading, multiprocessing, testing e assim por diante. Não é isso que você precisa no começo. Então, você pode começar com algo mais simples e mais útil. Por exemplo, você precisa de uma ferramenta poderosa para manipular seqüências de caracteres, pode tentar expressões regulares. Se você estiver trabalhando em um projeto científico, provavelmente achará o multiprocessamento interessante para você.


Siga os padrões, dicas e truques do Python


Existem muitas coisas específicas na programação especificamente para a linguagem Python que não são a tarefa mais fácil de aprender. É uma sorte que existem muitos recursos que cobrem muitos desses tópicos.


A documentação oficial do Python contém muitas informações. O PEP 20, também chamado de Zen por Python, escrito por Tim Peters, denota os princípios básicos do Python:


 >>> import this The Zen of Python, by Tim Peters  ,  .  ,  .  ,  .  ,  .  ,  .  ,  .   .     ,   .     .     .     .  ,   .    , ,      .        ,    .  ,  .    ,   .     —  .     — , , .   —  !    ! 

PEP 8, ou Code Writing Guide de Guido Van Rossum, B. Varsóvia.
Também PEP 257, que denota convenções para linhas de documentação.


Analise o código fonte


Python é uma linguagem de programação de código aberto, assim como as bibliotecas mais populares. Isso significa que você pode ler o código fonte. Isso geralmente é possível no Github, mas há outros lugares onde você pode fazer isso.
Ler e entender o código da biblioteca permite entender melhor como ele funciona.


Além disso, você pode aprender muito analisando o código fonte de outros programadores (espero que sejam bons). Você pode emprestar idéias, examinar diferentes caminhos de implementação, aprender novos padrões e assim por diante.


Seja interessado em bibliotecas


O Python possui muitas bibliotecas úteis para diferentes tarefas:
expressões regulares, matemática, estatística, geração de números aleatórios, testes, iteração, programação funcional, multithreading e multiprocessing, classes abstratas e muito mais.


Existem também algumas bibliotecas de terceiros realmente úteis para muitas tarefas científicas diferentes.
Obviamente, você não pode aprender como usá-los todos, mas pode se concentrar em alguns deles que lhe parecem mais interessantes para sua especialização.


Se você quer ser um cientista ou se envolver no aprendizado de máquina, precisa começar com o NumPy, que é a biblioteca fundadora, para manipular matrizes unidimensionais e multidimensionais de maneira eficiente e fácil. É rápido e inclui muitas operações de matriz, sem escrever explicitamente for loops do Python.


 >>> import numpy as np >>> >>> a = np.array([1, 2, 3, 4, 5]) >>> a array([1, 2, 3, 4, 5]) >>> b = 2**a >>> b array([ 2, 4, 8, 16, 32]) >>> a + b array([ 3, 6, 11, 20, 37]) >>> b / 2 array([ 1., 2., 4., 8., 16.]) 

  • O NumPy oferece muitas funções para manipular matrizes. Ele também contém ferramentas para álgebra linear, estatística e assim por diante.
  • O SciPy é uma biblioteca de cálculos científicos criados no NumPy, que contém recursos adicionais para álgebra linear e estatística.
  • Pandas é uma das bibliotecas Python mais populares. Também é construído no NumPy e funciona bem com o NumPy e o SciPy. Inclui funções para manipular dados.
  • O Scikit-learn é a biblioteca fundamental para o Machine Learning com muitos algoritmos. O TensorFlow, Theano, Pytorch e Keras também são usados ​​para trabalhar com redes neurais.
  • Matplotlib e Bokeh são boas opções para visualizar dados.

Todas essas bibliotecas possuem excelente documentação.


Se você deseja fazer programação na Web, pode aprender e praticar o trabalho com algumas estruturas de back-end do Python. O mais popular deles - Django, tem a maioria dos recursos necessários. É muito conveniente para grandes aplicações web. O Flask, por outro lado, é uma microestrutura poderosa e flexível com muitos complementos. Django e Flask são os frameworks web Python mais populares.


O Python também possui outros frameworks da web, como Pyramid, Bottle, Tornado e assim por diante.


SQLAlchemy é um pacote que inclui a capacidade de trabalhar com bancos de dados em um estilo orientado a objetos. É frequentemente usado em estruturas da Web, mas também em Ciência de Dados.


Torne-se parte da comunidade


Como já mencionado, o Python tem uma comunidade grande e amigável. Você pode se tornar parte disso. Leia publicações, comente, pergunte, procure explicações.


Quando você tem um nível de conhecimento suficiente, pode começar a investir seu conhecimento em projetos de código aberto ou ajudar aqueles que escrevem artigos ou tutoriais. Essas coisas são muito apreciadas pela comunidade e pela maioria dos empregadores em potencial.


Aprenda uma segunda linguagem de programação


Python é uma linguagem de programação com vários paradigmas e, em muitas situações, é suficiente.
Mas não importa o quê, você sempre precisa procurar vantagens em aprender outras línguas.
Com isso, você pode aprimorar seu conhecimento em programação em geral, paradigmas e expandir seus horizontes. Quando você aprende um idioma, aprender outros será mais fácil. A maioria dos bons programadores conhece vários idiomas.


Se você quer ser um programador da web, provavelmente precisará aprender JavaScript. Aprender C é bom para uma melhor compreensão dos conceitos básicos de programação, mas você também pode escrever funções muito rápidas para o Python. Rust é uma linguagem nova e muito interessante que já possui boa integração com o Python


Exemplos de projetos para a prática


Existem muitos projetos pequenos que você pode usar para aprender Python. Por exemplo, tente automatizar tarefas chatas. Sequências de aprendizado, expressões regulares e até bibliotecas de padrões Jinja podem ajudá-lo a escrever um código mais eficiente.


  • Se você trabalha frequentemente com o Microsoft Office Excel, pode usar XLWings, NumPy e Pandas para acelerar seus cálculos.
  • Você pode usar o Python para criar jogos. Por exemplo, você pode pegar a biblioteca random e tentar simular um rolo de dados ou embaralhar um baralho de cartas.
  • Se você deseja criar interfaces gráficas interessantes, pode usar o PyQt ou o Tkinter. Talvez você deva criar uma calculadora (quanto mais recursos, melhor) ou algum jogo simples, mas conhecido.
  • Se você quiser mergulhar no desenvolvimento web, tente o Flask. Requer apenas 5 linhas de código para obter aplicativos da Web básicos, mas funcionais.

O site oficial do Flask contém ótima documentação e um tutorial que você pode usar para estudá-lo.


O tutorial do Doumly Machine Learning tem instruções sobre como praticar Data Science e Machine Learning.


Conclusão


Você leu algumas dicas sobre como praticar Python. Espero que eles o ajudem a se tornar um programador Python. Lembre-se de que você precisa programar muito, escrever programas interessantes, tentar aprender com os erros e, claro, tornar-se parte da comunidade.


Feliz codificação!

Source: https://habr.com/ru/post/pt478900/


All Articles