Sobre o projeto

O “Python - 100 Dias do Iniciante ao Mestre” é um tutorial sistemático de Python criado e open source pelo desenvolvedor Luo Hao (Jack Fraser), organizado em documentos Markdown e dividido por dias de progresso do curso. **Estrutura do conteúdo do curso**: **Dia 01~20: Fundamentos da Linguagem Python** Inicia com introdução ao Python, instalação, variáveis e operadores, estruturas de seleção e loop; avança para estruturas de dados comuns (listas, tuplas, strings, conjuntos, dicionários); cobre definição de funções, módulos, funções de ordem superior, expressões Lambda, decoradores e recursão; finaliza com programação orientada a objetos (classes, objetos, herança, polimorfismo). **Dia 21~30: Aplicações da Linguagem Python** Abrange leitura e escrita de arquivos, tratamento de exceções, serialização JSON, operação de arquivos CSV/Excel/Word/PDF/PowerPoint, processamento de imagens e envio de e-mails, além da aplicação de expressões regulares. **Dia 31~35: Outros Conteúdos Relacionados** Inclui avanços na linguagem Python (iteradores, geradores, programação concorrente), introdução ao front-end web (HTML/CSS/JavaScript/Vue.js/Element/Bootstrap) e uso do sistema operacional Linux. **Dia 36~45: Fundamentos e Avanços em Bancos de Dados** Explicação sistemática de bancos de dados relacionais e MySQL, incluindo comandos DDL/DML/DQL/DCL, funções de janela, tipo JSON, views/funções/procedimentos armazenados, otimização de índices, e prática de integração Python com MySQL e Hive. **Dia 46~60: Prática com Django** Do início rápido no Django até modelos avançados, recursos estáticos, cookies/sessions, geração de relatórios (Excel/PDF/ECharts), logs e barras de depuração, middleware, desenvolvimento separado front-end/back-end, arquitetura RESTful e DRF (Django Rest Framework), cache (Redis), tarefas assíncronas (Celery), testes unitários e implantação do projeto. **Dia 61~65: Coleta de Dados na Web** Apresenta conceitos e legalidade de web scrapers, scraping com requests, análise de páginas (regex/XPath/selectores CSS), programação concorrente (multi-threading/multi-processo/I/O assíncrono), extração de conteúdo dinâmico com Selenium e framework Scrapy. **Dia 66~80: Análise de Dados com Python** Utiliza ambientes Anaconda e Jupyter Lab para estudo aprofundado de NumPy (operações com arrays, mecanismo de broadcasting, operações matriciais) e pandas (Series/DataFrame, limpeza de dados, tabelas dinâmicas, séries temporais), além de visualização de dados com Matplotlib e Seaborn. **Dia 81~90: Aprendizado de Máquina** Cobre kNN, árvores de decisão e florestas aleatórias, Bayes ingênuo, modelos de regressão (linear/lógica/polinomial), clustering K-Means, aprendizado de conjunto (AdaBoost/GBDT/XGBoost/LightGBM), redes neurais e introdução ao processamento de linguagem natural (modelo bolsa de palavras, vetores de palavras, RNN, Seq2Seq, Transformer). **Dia 91~100: Desenvolvimento de Projetos em Equipe** Apresenta modelo waterfall e desenvolvimento ágil (Scrum), normas de colaboração em equipe de projetos (revisão de código, controle de versão, gestão de defeitos), técnicas de contêiner Docker e orquestração Kubernetes, otimização de desempenho MySQL, design de APIs REST, pontos técnicos de sites de e-commerce, implantação e ajuste de desempenho de projetos, além de preparação para entrevistas. O projeto também conta com cursos em vídeo no Bilibili e coluna no Zhihu, adequado para aprendizes de Python do nível básico ao avançado usarem de forma sistemática.