Eu me sinto preso no centro de Python, Como passar do iniciante [fechado]

22

Eu realmente peço desculpas se isso não seguir as regras do SO, mas eu preciso de uma pequena ajuda, eu pessoalmente ainda me classifico como iniciante em python. No entanto, escrevi um programa impraticável muito pequeno e MUITO CERTO para meu chefe usar.

Eu sei que ainda sou iniciante porque coisas simples ainda me deixam perplexa, mas todo livro que eu leio para iniciantes honestamente apenas refaz o que eu já sei, mas todo livro "mais avançado" não me permite aprender, eles dependem de arquivos de exemplo e eu nunca entendo realmente por que eles criaram a função 'said' ou 'said' class. Então, na minha pergunta ...

Existe alguma recomendação em um livro ou em QUALQUER COISA que me empurre para fora deste estágio? Eu usei a cabeça primeiro e normalmente eles são muito bons, mas o meu problema é que eles me fazem voltar a rastrear apenas para seguir em frente novamente. é confuso em Python, basicamente acho que preciso criar um programa enquanto acompanha. Novamente, gosto do estilo do HeadFirst, mas preciso de algo que não me faça lembrar uma coisa apenas para esquecê-la ...

para registro, eu verifiquei alguns livros da O'Reilly

Isov5
fonte
7
Para todo conceito inicial, escreva alguns programas pequenos até entender o jeito. Depois de se sentir confortável, faça o mesmo com mais e mais até chegar a coisas avançadas. Apenas ler sem prática e codificação não vai ajudar muito.
6
Você já leu Como pensar como um cientista da computação ?
Oscar Mederos
Você já seguiu o tutorial docs.python.org/tutorial/index.html ? Você tem aspectos específicos que o confundem? Se você pudesse ilustrá-los com alguns exemplos de código, seria ainda melhor.
Juanchopanza
O chefe não precisa de um programa maior escrito em Python também? Você precisa de experiência ...
2
faça, tente e faça perguntas quando você não entender, as pessoas aqui o ajudarão.
Monkut

Respostas:

23

Pare de ler livros.

Vá escrever código usando o tempo agora livre de leitura. Prática. Ponderar. Enfrente problemas reais no código real que você escreve.

Então você terá perguntas suficientes que os livros avançados podem responder. Agora você não tem essas perguntas, e as respostas nos livros não fazem sentido para você.

É como aprender uma língua estrangeira ou aprender a nadar: os livros por si só não podem ajudar. Você precisa praticar muito, então seu cérebro 'entende'.

9000
fonte
19

FWIW, a maneira como eu realmente aprendi Python foi escrever um aplicativo não trivial para mim . Na verdade, foi uma reescrita do mesmo aplicativo que eu havia criado anteriormente para aprender C (e C ++ posteriormente), então eu estava muito familiarizado com os tipos de processamento que precisavam ser feitos. Durante cada (re) gravação, tentei tirar proveito de todos os recursos especiais oferecidos pelo idioma específico que estava sendo usado ou que simplesmente queria experimentar.

Como bônus, quando terminar ou pelo menos tiver uma versão funcional, você terá algo realmente útil, não algum exercício de programação que não vale nada por si só. Você também pode voltar mais tarde e alterar o programa depois de aprender mais sobre as melhores maneiras de realizar as coisas no idioma.

Uma maneira muito útil de melhorar qualquer linguagem de programação é apenas ler muitos outros programas. Uma boa maneira de fazer isso hoje em dia é usar o Google, conforme descrito nesta resposta StackedOverflow . Esse é um ótimo recurso e você frequentemente lerá o código de "força industrial" escrito por programadores profissionais e usado em outros aplicativos da vida real.

Atualizar:

Como a Pesquisa de código do Google foi descontinuada em 15 de janeiro de 2012, além de reverter para pesquisas regulares do Google, existe algo chamado Coleção de trechos de código que parece promissor. Vários outros recursos são mencionados nas respostas a esta pergunta (fechada) Substituição da Pesquisa de código do Google? .

Martineau
fonte
5
Ênfase em não trivial. Para aprender a fazer coisas difíceis, tente fazer coisas difíceis.
Bryan Oakley
5

Apenas fique atento aos conceitos fáceis. Faça pequenos programas encapsulando seus conceitos. Em algum momento, você alcançará um monte de entendimento e coisas novas farão mais sentido para você. Também mantenho um diretório chamado trechos de Python. Acho útil como ponto de partida em certos conceitos.

Outro truque que considero inestimável é ler o código de outras pessoas e comentá-lo, resumindo o que cada linha e seção faz. Se eu não souber, é hora do Google. Dessa forma, vejo o Python em ação e posso dividi-lo em seções organizadas.

Um recurso particularmente rico para código é a própria fonte do Python.

Alan
fonte
5

Se você não tiver certeza sobre as bibliotecas básicas do Python ou sobre o design orientado a objetos (desde que você mencione não saber por que a função "said" class ou "said" foi usada):

  1. A criação de habilidades no design orientado a objetos ajuda a refletir sobre o design orientado a objetos.

  2. O outro site de S.Lott, Construindo Habilidades em Python , também pode ser uma boa maneira de expandir suas habilidades em Python além do básico. Ele tem muitos aplicativos que são um pouco mais simples que os livros listados abaixo, mas ainda são divertidos e instrutivos.


Se o seu problema é que você não consegue descobrir como usar o Python para fazer algo interessante:

1) Iniciando o Python: do iniciante ao profissional entra em algumas coisas interessantes: GUIs, criação de seu próprio aplicativo de compartilhamento de arquivos etc. Eu também gosto do estilo de Hetland.

2) Você mencionou os livros de O'Reilly, mas o Programming Python lida quase inteiramente com aplicativos, em vez de sintaxe. Possui muitas aplicações interessantes que farão com que seus sucos criativos fluam. É um livro enorme (~ 1.500 páginas, eu acho), e o 4e é totalmente focado no Python 3, mas definitivamente abre seus olhos para como as pessoas estão usando o Python.

MikeRand
fonte
+1 para o árbitro do site de S. Lott ... nunca o vi antes.
Gerrat 27/07/11
4

Existem dois livros em Python que eu recomendaria, e um deles já foi mencionado por @MikeRand:

  • Dive Into Python 3 é um livro obrigatório que aborda tópicos introdutórios e alguns mais avançados.
  • Programar Python é IMHO o livro certo para mudar para tópicos muito avançados em Python. Também abrange muitas áreas, por exemplo, UIs (G), aplicativos de sistema, programação na Web etc.

Observe que as versões mais recentes dos dois livros abrangem o Python 3. Se você trabalha com uma versão mais antiga do Python, procure uma versão anterior dos livros. FTR, uma opção alternativa é o Python para Design de Software (antigo Como pensar como um cientista da computação: aprendendo com o Python mencionado por @ oscar-mederos), mas a maior parte do seu conteúdo também é introdutória (e, nesse sentido, eu recomendaria o Dive Into Python) )

sakisk
fonte
3

A maneira mais eficiente é revisar seu código regularmente por um mentor experiente e implementar suas sugestões. Esse é um dos maiores benefícios de um diploma universitário, mas não precisa necessariamente ser tão formal quanto isso. Eu me considero um programador avançado, mas ainda ando pelo corredor para discutir as principais decisões de design com um colega antes da codificação e obter o produto final revisado posteriormente.

Karl Bielefeldt
fonte
0

Além de alguns dos livros mencionados (especialmente Como pensar como um cientista da computação ), consulte o site de receitas do Python do ActiveState . Leia algumas coisas que lhe interessam, veja o código e, em seguida, descubra como você abordaria o problema e como isso difere do que está na receita.

Peter Rowell
fonte
-1

Essa é uma sugestão bastante estranha, mas o jeito que cheguei onde estou é fazendo perguntas e vendo outras pessoas fazerem perguntas e lendo as respostas. Então, navegando pelas perguntas marcadas em Python do Stack Overflow ou (como no meu caso) se tornando um regular no #python no freenode.

Devin Jeanpierre
fonte
-3

Experimente o livro "Olá, mundo! Programação de computador para adolescentes e outros iniciantes", de Warren e Carter Sande, como aprendi sobre scripts em Python, ou ouvi "Olá! Python", de Anthony Briggs, também é um livro fantástico.

Concentre-se em organizar seus programas com funções, comentários e algum tipo de estrutura de como ele flui. Não se esqueça: Um programa é simplesmente um conjunto de instruções que o computador segue. Facilite a leitura e a compreensão.

ryanb173
fonte