Python 的练手项目有哪些值得推荐?

python程序员提高必做开源项目robobrowser

A library for web scraping built on Requests and BeautifulSoup. Like Mechanize, but with tests, docs, and a Pythonic interface.github.com

Shared by @whatthecarpmining github.com

Shared by @mgrouchywagtail

Wagtail is a Django content management system with a fresh take.

Beautifully designed so if you are looking for an alternative to Django

CMS here is your shot.github.com

Shared by @tomdhuey

A multi-threaded task queue for Python.github.com

Shared by @myusuf3Flask API

Love Django REST Framework? You can now enjoy the same beautiful APIs within Flask.flaskapi.org

Shared by @myusuf3Mario Level 1 In Python

Recreating the first level in Mario using PyGame. Awesome for anyone interested in build a 2D platformer.github.com

Shared by @myusuf3Algorithms

A collection of Data Structures and Algorithms in Python.github.com

Shared by @myusuf3rumps

Ridiculously Uncomplicated Mac OSX Python Status Bar Apps! Got a little app you want to write you can do it Python now!github.com

Shared by @myusuf3psdash

Nice looking web dashboard written in Flask that can display data about your system and its processes as returned by psutil.github.com

Shared by @mgrouchy500 Lines or Less

Awesome repository of how things work with computers and software. I am

sure we have shared this before but its definitely worth another look.github.com

Shared by @myusuf3IPython Notebook Themes

Awesome theme customization for IPython Notebooks!github.com

Shared by @myusuf3Jarvis

An attempt to create a Jarvis-like personal assistant with Python.github.com

Shared by @mgrouchyPython Practice Projects

A series of Python practice projects to help your hone your craft with deliberate practice.pythonpracticeprojects.com

Shared by @mgrouchyFlask-Foundation

A foundation leveraging best practices that you can use to start building your flask applications with.github.com

Shared by @mgrouchyStellar

Fast database snapshots for development. It’s like Git for databases.github.com

Shared by @versaepercol

Nice. Percol is an interactive grep tool in your terminal. Check out the README for a demo and more information.github.com

Shared by @mgrouchymagpie

Git-Backed Evernote Replacement.github.com

Shared by @myusuf3Explore Flask

The Explore Flask book is now freely available online. Time to upgrade your Flask knowledge.exploreflask.com

Shared by @mgrouchyThe Stolen Crown RPG

Cool! A Fantasy RPG built with Python and PyGame.github.com

Shared by @mgrouchydjango-quicky

A collection of tools to get you focused on what you building rather

than the usual nitty gritty, tons of of cool little functionality to

speed things up!github.com

Shared by @myusuf3doitlive

Cool little hack to make you look like a superstar during presentations

and screencasts. It allows you to write code before hand, and replays

the commands in a fake terminal session as you type random characters.github.com

Shared by @myusuf3Data Science 45 minute intros.

45 minute Ipython notebook presentations for getting starting with basic

programming, statistics and machine learning techniques.github.com

Shared by @mgrouchybattleschool

This is neat. Set up your development environment using ansible in a similar way you would set up your machine with something like Boxen.github.com

Shared by @mgrouchyawesome-python

A curated list of awesome Python resources, frameworks, libraries and software.github.com

Shared by @mgrouchyinbox

Inbox platform launched earlier this week, with tons of SDKs and

libraries! This is the one in Python. Great premise and should enable

people to do some great stuff!github.com

Shared by @myusuf3py-must-watch

A great collection of must watch Python videos. Great resource to start levelling up your Python knowledge.github.com

Shared by @STajbakhshawesome-machine-learning

A curated list of awesome Machine Learning frameworks, libraries and software.github.com

Shared by @myusuf3python-fields

Writing container classes often requires the writing of significant

amounts of boilerplate. Avoid all of that with the fields module which

offers a way to avoid it.github.com

Shared by @mgrouchyawesome-django

Over the last few issues there have been other “awesome” collections. If you are into Django, this is the one for you!github.com

Shared by @myusuf3Toga

A Python native, OS native GUI toolkit. Very cool project for building Native GUI apps with Python.pybee.org

Shared by @mgrouchydoorman

Keeps your secrets, secret. Allows you to put the keys, passwords and

things you want to keep secret in a config file and then hide and show

your secrets.github.com

Shared by @halitalptekinvim-bootstrap

A simple website that helps you bootstrap your .vimrc for your preferred language.github.com

Shared by @mgrouchypython-patterns

A collection of common Python design patterns and idioms.github.com

Shared by @mgrouchyflask-xxl

Interesting. A best practices approach to creating large web apps, with the goal of making flask feel more like django.github.com

Shared by @mgrouchydiscover-flask

A weekly series of Screencasts covering an introduction to Flask.github.com

Shared by @mgrouchyawesome-sqlalchemy

Lots of really awesome SQLAlchemy resources.github.com

Shared by @mgrouchylenscap

Lenscap is a static site generator for creating beautiful photo narrativesgithub.com

Shared by @myusuf3schematics

A Python library to combine types into structures, validate them, and transform your data based on simple descriptions.github.com

Shared by @mgrouchyhome-assistant

Home automation with Python.github.com

Shared by @mgrouchy500 Lines or Less

Awesome repository of how things work with computers and software. I am

sure we have shared this before but its definitely worth another look.github.com

Shared by @myusuf3tortilla

Very cool project for consuming APIs made easy. Give it a look if you are tried of writing API wrappers.github.com

Shared by @myusuf3iterstuff

A collection of tools for working with iterators.github.com

Shared by @benlast

Articles

Python 201: Properties pythonlibrary.org

Shared by @myusuf3Reasons for Using IPython Interactively

You might have heard all the talk about the wonderful IPython notebooks,

here are some reasons why you should check out the IPython interactive

shell.fastml.com

Shared by @myusuf3A Django Code Organization Strategy

I like to see this type of writing when is comes to software and how it

is laid out. This covers various options and solving problems and

proposes a few solutions. Favourite is in the comments.github.io

Shared by @myusuf3How to Save 90% on Your S3 Bill

Awesome find, everyone hosting anything on S3 will want to read this.appneta.com

Shared by @myusuf3Full Stack Python

A great guide of dealing with the full stack required with creating a

Python web application. Topics cover the entire stack from servers, web

frameworks, security and source control.fullstackpython.com

Shared by @mgrouchyStarting A Python Project The Right Way

Have an idea for your next, or first, Python project? Well check out

this article to make sure you are getting started the right way!jeffknupp.com

Shared by @mgrouchy14 Minimal Web Frameworks for Python

Want to try a lighter web framework then Django? Check out these minimal Python web frameworks.codecondo.com

Shared by @alexivanovsSaying Goodbye To Python

Amazing article and growth and the real strength of the Python community.ianbicking.org

Shared by @myusuf3A Celery-like Python Task Queue in 55 Lines of Code

Nice tutorial about how one would go about starting to create a task queue in Python.jeffknupp.com

Shared by @mgrouchyHow We Use Gevent to go Fast

Nice overview of how Pinterest used gevent to increase throughput of

site and speed up requests. They also cover the challenges they faced

during the switch over.pinterest.com

Shared by @myusuf3Unit Testing SQLAlchemy

How do you test your SQLAlchemy apps? Check out this post and its predecessor for the low down.blogspot.ca

Shared by @mgrouchyHow to Create a Python Library

In depth tutorial on how to create a python library and package it.pypix.com

Shared by @myusuf3Introduction to Python for Statistical Learning

Great introduction to tools like numpy, pandas and matplotlab for doing statistical learning work in Python.datarobot.com

Shared by @mgrouchyLessons Learned Architecting Realtime Applications

This discusses the various options of building realtime applications in

python and various technologies and techniques used and their

limitations. Good read.lincolnloop.com

Shared by @myusuf3Unyielding

Glyph of Twisted fame talks has written a great article about concurrency in Python.twistedmatrix.com

Shared by @mgrouchyPython Concurrency: An Intro to Threads

Great tutorial here. If you are looking to jump headfirst into Python

threading and concurrency, this is as good a place as any to start.pythonlibrary.org

Shared by @mgrouchyPython Property

Nice well written introduction to Python properties.programiz.com

Shared by @myusuf3Generating Machine Learning Models With Scikit-Learn

In a follow up to his last post about “Building decision trees” the

author gives a nice explanation of how to generate machine learning

models with scikit-learn.garysieling.com

Shared by @mgrouchyUnderstanding Test Driven Development with Django

If you are looking to learn a little more about Test Driven Development

or are wondering about applying your TDD knowledge to your Django work,

this is a great place to start.arunrocks.com

Shared by @mgrouchyMake Python Faster Without Trying Too Much

Nice article on the few steps you could take to make your code run

faster without too much effort. Few great tips on profiling and taking

advantage of things like pypy and cython!lukauskas.co.uk

Shared by @myusuf3Fast scraping in python with asyncio

Cool article showing you how to build a faster screen scraper by downloading pages asynchronously with asyncio.compiletoi.net

Shared by @mgrouchyMeta Programming with Python

Meta programming basics and as well introduces metaclass hooks.wordpress.com

Shared by @myusuf3Understanding Python By Breaking It

Increase your Python knowledge by breaking it. The author goes though a guided tour of poking and prodding CPythons internals.hakril.net

Shared by @mgrouchyWho needs a database?

Interesting thought experiment about completely knocking out database

from stack, this obviously has some issues but interesting to see how it

comes together.getsilvi.com

Shared by @myusuf3Logging as Storytelling #3: Types

Have you ever considered what it takes to write excellent and consistent

log messages? This article and its predecessors helps you define that.hybridcluster.com

Shared by @mgrouchyAn Artificial Intelligence for the 2048 game

2048 has been all the rage lately with projects cropping up everywhere.

This is a cool examination of implementing an AI to solve the game.blogspot.it

Shared by @mgrouchy20 Good Functions To Know in Python

Another one of these lists that just keep coming up. Likely last one we will link to so enjoy!thelivingpearl.com

Shared by @myusuf3Python Project Howto

A great place to get started to turn your Python script into a Python

project. Great guide that brings you from creating a repository to

testing your code, all the way to packaging and releasing your code.infinitemonkeycorps.net

Shared by @mgrouchyBuild a Flask App in 30 Minutes

Get up and running with your first Flask app in no time!stormpath.com

Shared by @goStormpathWriting Purposeful Unit Tests

Nice post about writing good unit tests to help you write better code,

prevent regressions and allow you to assert the correctness of your

code.appneta.com

Shared by @mgrouchyOOP concepts in Python 2.x – Part 1

Cool little article on OOP way of thinking and Python.github.io

Shared by @tw_lgiordaniGetting Started with pylint

Introduction to Pylint for beginners.blogspot.ca

Shared by @myusuf3Lightweight Virtual Environments in Python 3.4

Article covers new venv features and usecases in Python 3.4drdobbs.com

Shared by @myusuf3Understanding Gunicorn’s Concurrency Model

Nice article touching the finer points of gunicorn’s concurrency models.volant.is

Shared by @myusuf3Visualizing Realtime Data w/ Python, D3, RabbitMQ

Article on consuming data from the twitter stream using RabbitMQ and Python. Then finally visualizing the data using D3.jsbrettdangerfield.com

Shared by @myusuf3Python Data Structures are Fast

Nice article that some of you may find illuminating, with respect where

certain speed ups and loses may actually occur in Python data

structures.matthewrocklin.com

Shared by @mgrouchyA little note-taking app with Flask

Awesome read for beginners looking to start a small flask project. This

one covers the process of creating s simple note taking application in

Flask.charlesleifer.com

Shared by @myusuf3Module Properties | The Proxy Pattern

Nice explanation of how to add a @property to a Python module.github.io

Shared by @mgrouchyThe Light and Dark Sides of Python Name Binding

Pretty cool dive into python name binding! Tons of mind cool stuff to take advantage of for good and/or evil!excess.org

Shared by @myusuf310 Most Common Python Mistakes

Nice round up of really common Python gotcha’s that can trip up Python developers.toptal.com

Shared by @mgrouchyPython Partials are Fun!

If you have been wondering about how to get started with Partials this

is a great place to start. With a good explanation of what they are and

an easy to follow example to see the flexibility and power of partials.pydanny.com

Shared by @mgrouchyMaking a specific Django app faster

Really nice detailed article of the steps you the author followed to

speed up a Django application through profiling and optimization with

tips on how you can apply these to your applications.vanrees.org

Shared by @Dynamic Programming with Python

A walk through the Dynamic Programming strategy with a fun Python examplejminuscula.es

Shared by @jminusculaWhy I push for Python

Great article about why an engineering professor would make a push to teach Python to undergraduates.lorenabarba.com

Shared by @mgrouchyDockerizing a Python Web App

Docker has been all the buzz lately and this post shows you how to turn

your Python web app into an application that can be deployed using

docker containers on AWS.amazon.com

Shared by @mgrouchyHow to Organize Your Python Application Code

Nice article with some good tips of how to organize your Python code next time you are writing a Python application.pythonblogs.com

Shared by @mgrouchyMethod overriding in Python

Nice tips on Inheritance and Method overriding in Python.github.io

Shared by @tw_lgiordaniHow do I Gevent?

Really nice extensive tutorial on Gevent. Provides plenty of background

information, its pros and cons and how it all works by showing how to

create a simple web crawler.hownowstephen.com

Shared by @mgrouchyUsing Mocks in Python

Extensive introduction to mock library in Python with tons of examples.

If you are looking to learn a few things about mock this article is a

good resource.drdobbs.com

Shared by @myusuf310 Awesome Features of Python 3

Awesome presentation on why you should seriously consider Python 3 and what you are missing out on!github.io

Shared by @myusuf3Is Crossbar.io the Future of Python Web Apps?

Crossbar is an application router that implements WAMP. Nice post where the author talks about Crossbar and wonders if Crossbar could be the future of Python web applications.tavendo.com

Shared by @mgrouchyWhy Python 4.0 won’t be like Python 3.0

Nick Coghlan discusses the far future transition to Python 4.0, as well

as touches on how it might not be exactly like the transition between

Python 2.0 and 3.0curiousefficiency.org

Shared by @myusuf3Things from Python I’d miss in Go

If you switched from Python to Go what would be the features you would

miss from Python in Go? This is the question the author addresses in

this post.yosefk.com

Shared by @mgrouchyParallel Programming in Python

A very complete introduction to parallel programming in Python using

Python’s multiprocessing module. This introduction takes you from the

specifics about the multiprocessing module to its application.sebastianraschka.com

Shared by @mgrouchyPython Classes and Object Oriented Programming

Everything you wanted to know about Object Oriented Programming in Python. Great introduction.jeffknupp.com

Shared by @mgrouchyWhy Every Language Needs Its Underscore

Interesting article about the funcy library and how it is analogous to

the Underscore.js library. Its purpose is to make your life easier when

writing code and give you a series of functional tools to write cleaner,

more understandable code.hackflow.com

Shared by @mgrouchyWhy Python (or any decent language) Doesn’t Need Blocks

Very opinionated article on the hype of blocks in other languages and why they are no better than functions.blogspot.it

Shared by @myusuf3Using Docker as a Python Development Environment

Docker is all the new hotness, check out this post detailing how to use Docker for your Python development environment.uglyduckling.nl

Shared by @mgrouchyAnti-Patterns in Python Programming

A look at some common Python programming anti-patterns and how to correct those common mistakes.lignos.org

Shared by @mgrouchyDecorators and Functional Python

How can Python’s decorators help us thing in a functional way? Great

information about Python decorators and how how they can teach us to

think about functional concepts like higher order functions and

closures.brianholdefehr.com

Shared by @mgrouchyThe Forgotten Optional else in Python Loops

I love this article, if you always felt dirty creating variable to keep track of conditionals, else clause reprise y’all.svbtle.com

Shared by @myusuf37 Python Regular Expressions Examples

Get the lowdown on using Regular expressions in Python.thegeekstuff.com

Shared by @mgrouchyMethod decorators in Python

Decorators is probably the most popular topic for Python programming

blogs. We can probably take this as a sign that not everyone understands

them yet so check out this post on method decorators.agiliq.com

Shared by @mgrouchyHow to argue for Python’s use

Python core developer Brett Cannon gives you some ammunition next time

someone asks you “Why use Python?”. Nice contrast of the reasons why Go

is a good language and why you might still want to use Python.svbtle.com

Shared by @mgrouchyBecome A Better Programmer – How To Read Source Code

Reading source code is one of the most useful skills to learn for any

programmer. In this post the author gives some nice tips to step up your

code reading game.pythonpracticeprojects.com

Shared by @mgrouchySimple Python Parallelism

Nice tutorial of how to easily parallelize tasks in Python with the languagesmultiprocessing library without getting bogged down learning other parallization frameworks.github.io

Shared by @mgrouchyMaking database-backed dashboards in 3 minutes

Very simple tutorial to create Matplotlib graphs and ship them as part of email reports and web dashboards.maxmautner.com

Shared by @myusuf3Getting Started with Python Internals

Nice guide to get you ready to jump in and start working with Python internals.github.io

Shared by @mgrouchySetting up Sublime Text 3 for Full Stack Python Development

Fantastic guide to help you get up and running with Sublime Text for your next Python project.realpython.com

Shared by @mgrouchyPython for Programmers

A nice collection of all the things you probably wanted to know when you started writing python programs.rustyrazorblade.com

Shared by @mgrouchyRefactoring monolithic if/else filters with closures

Nice little example on how to refactor your monolithic if/else clauses

for filtering data. Provides a small albeit contrived example to

illustrate the issue.startmake.com

Shared by @scottallenonTeaching an old dog new tricks – or, how I learned to love Python’s str.format, and gave up on %

Very nice guide about changing your ways from using ‘%’ to format Strings in Python and use string.format instead.lerner.co.il

Shared by @mgrouchyHow to Use Python Regular Expressions to Parse a Text File (Practical Use Case Scenario with Python Reg-Ex Re Split Sub)

Great tutorial. Guides you step by step to parsing and cleaning up the

resulting text from text files with Python regular expressions.thegeekstuff.com

Shared by @mgrouchyHigher Order Functions and List Comprehensions in Python svbtle.com

Shared by @myusuf3How to Supercharge Your Python Shell with a .pythonrc

Awesome small little way to make your python shell so much more convenient.dlo.me

Shared by @myusuf3Python Bad Practice, A Concrete Case

Awesome run down of bad practice Python, with concrete examples!danjou.info

Shared by @myusuf3Python Single Line For Loops

Nice introduction to list comprehensions here for the new Python programmer.teamtreehouse.com

Shared by @mgrouchyGuido van Rossum On Finding His Way

The Python creator and Dropbox engineer reflects on his early days in programming.medium.com

Shared by @myusuf3Tutorial I Wish I Had When Tackling AJAX and Django

Beginners tutorial on how to use AJAX and Django!wordpress.com

Shared by @myusuf3Celery In Production

How Caktus Group uses Celery in production!caktusgroup.com

Shared by @myusuf3Maybe in Python senko.net

Shared by @myusuf3Asyncio Implementation Overview

Awesome article for understanding asyncio! For the beginner to async programming but adequately experienced python developers.bitdance.com

Shared by @myusuf3Django vs Flask vs Pyramid: Choosing a Python Web Framework

Comparing the big 3 Python web frameworks!airpair.com

Shared by @myusuf3Five mini programming projects for the Python beginner

New to Python programming? Here are five projects to help get you started.medium.com

Shared by @mgrouchySimple Interactive Data Analysis with Python

Simple article for the simple basics of python interactivity and the

awesomeness that is IPython so if you haven’t tried it out yet. Great

place to start!pbpython.com

Shared by @myusuf3In Python, it’s all about the attributes

Very detailed post about attributes in Python. Good read!lerner.co.il

Shared by @mgrouchyAdvanced use of Python decorators and metaclasses

Got the basics of Python decorators and Metaclasses down? If so time to step up your Python game with more advanced techniques.lgiordani.com

Shared by @tw_lgiordaniDjango vs Flask vs Pyramid: Choosing a Python Web Framework

This post presents a nice comparison to help you choose the between the Django, Flask and Pyramid web frameworks.airpair.com

Shared by @elldudleyFluent interface in python kracekumar.com

Shared by @mgrouchyBuilding Web Applications with Django and AngularJS

Now this is a very detailed guide to building web apps with Django and Angular.js. Definitely worth checking out.thinkster.io

Shared by @mgrouchyPython Comprehension Syntax

Nice comprehensive tutorial of Comprehension and Generator syntax in Python.airpair.com

Shared by @elldudleyVirtualenv the Docker way

Some neat tricks for working with Virtualenv inside your docker containers.atte.ro

Shared by @mgrouchyModern guide to getting started with Data Science and Python

Nice post, but I dont agree with his tempered advice for newbies not to take a look at numpy and matplotlib! Good read though!github.io

Shared by @myusuf3Multiprocessing and Memory

Multiprocessing in Python doesn’t get much HYPE. Here is a cool little post how it can be effective in a ton of spots.yseam.com

Shared by @myusuf3Recommended Django Project Layout

Unsure on how to setup your Django project?revsys.com

Shared by @myusuf3Top 10 Python idioms I wish I’d learned earlier

A nice collection of Python idioms that are very nice to know! Check out

the discussion section for further discussion of this post on reddit.blogspot.ca

Shared by @mgrouchyThe Future of Asynchronous IO in Python

Real nice overview of common design patterns of the past and a look at the emergent patterns in Asynchronous IO in the future.medium.com

Shared by @mgrouchyA Python Internals Adventure

Awesome article on diving into python internals and CPython.dreamwidth.org

Shared by @myusuf3Retries in Requests

Nice dive into one of the advanced features of the requests library,

retries. Nice example to get you started here if this is something you

need in your next project.coglib.com

Shared by @sigmavirus24Why is Object-Oriented Programming Useful?

Nice little article on OOP for beginners.inventwithpython.com

Shared by @myusuf3Deploying a Django app on Dokku

Get up and running with your favorite django applications on Dokku. Very cool!realpython.com

Shared by @myusuf3Django and Flask: Why and When To Use Each

Cool talk, on when to use which framework and when to switch!hakkalabs.co

Shared by @myusuf310 Myths of Enterprise Python

Nice breakdown of myths from PayPal Engineering.paypal-engineering.com

Shared by @myusuf314 Best Pandas Features

Nice breakdown of 14 great(and possibly best) Panda’s features. Discover what you might be missing out on.bigdataexaminer.com

Shared by @mgrouchyThe Top Mistakes Developers Make When Using Python for Big Data Analytics

Nice breakdown of common mistakes that developers often make when working with Python for big data analytics.airpair.com

Shared by @elldudleyjson vs simplejson vs ujson

Very detailed rundown with benchmarks of the differences between common python JSON parsing libraries. SPOILER: ujson is the fastest by a considerable margin.medium.com

Shared by @mgrouchy个人专栏:知乎专栏编辑于 2016-05-0622314 条评论分享收藏感谢收起董伟明《Python Web开发实战》作者。订阅号:Python之美69 人赞同了该回答谢邀。--- 2016.09.20 补充 ---GitHub - gregmalcolm/python_koans: Python Koans 是个不错的练手项目,我还曾经给它贡献过代码。在你学会Python以后可以拿它练手,一步一步的完成所有待解决的问题。--- 补充结束 ---我在我的专栏「Python之美 - 知乎专栏」中写过一篇文章 教你阅读Python开源项目代码 - Python之美 - 知乎专栏。其中介绍了初学者和有一定经验者可以阅读的一些开源项目,最后也介绍了阅读别人代码的一些经验,在这里再发一下,顺便加点其他的推荐:阅读Python开源项目代码主要有如下三个原因:1. 在工作过程中遇到一些问题,Google和StackOverFlow等网站找不到解决办法,只能去翻源码。2. 对某些项目或者方向非常感兴趣,希望深入。3. 学习遇到瓶颈需要汲取开源项目的经验和用法来做提高。没有目的的阅读开源项目就是耍流氓。浪费了时间,但是能学到的东西也很少。怎么样根据自身情况去阅读呢? 1. 和兴趣以及工作契合。举个例子,工作中没有机会用到Celery又不是想自己造个轮子,读它的源码做什么?所以要从平时能接触到的那些项目中选取。比如我,我肯定不去看Django的代码,因为日常工作基本遇不到,遇到了现翻就好了。2. 一个方向只看一两个典型的就可以了。比如Web框架,我只看过Bottle和Flask的源码(其实之前也看过Django的,只是浅尝辄止),而且看Bottle已经是好几年前的事情了。并不是堆的多了更好,有时候反而选择太多会懵。3. 不同技术阶段的选择代码量、复杂度不一样的项目,下面会具体推荐。4. 清楚自己看代码的目的。就是你看代码是想了解人家怎么设计、调试BUG、还是只是想学习正确的编程用法呢?其实没有必要细抠每个代码细节,有时候当黑盒看,知道输入输出就可以了。我个人的喜好和工作中看别人代码差不多,基本每个人、每个项目、每个团队都有自己写代码的风格,比如变量命名风格、某些语言特性使用方式、代码规范要求、目录风格等,其实开源项目的作者也是一样。看代码,如看人(团队)。 首先介绍下我的喜好(排名分先后):1. kennethreitz。requests和python-guide作者。他还有一个非常励志的故事,有兴趣的可以看 谁说程序员不是潜力股?2. mitsuhiko。flask、Jinja2、werkzeug和flask-sqlalchemy作者。3. sigmavirus24。flake8、pycodestyle(原pep8)、requests、urllib3等项目的主要贡献者和维护者。4. ask。Celery及相关依赖的作者。

5. ajdavis。mongo-python-driver(pymongo)、tornado等项目的主要贡献者。

6. bitprophet。fabric、paramiko(Python的ssh库)作者。前2个是公认的Python领域代码写的最好的、最有创意的工程师。初学者推荐阅读项目初学者可以先阅读一些代码量比较少的,最好是单文件的项目:1. GitHub - kennethreitz/pip-pop: Tools for managing requirements files. 2. GitHub - kennethreitz/envoy: Python Subprocesses for Humans™.3. GitHub - kennethreitz/records: SQL for Humans™4. GitHub - mitsuhiko/pluginbase: A simple but flexible plugin system for Python.5. GitHub - mitsuhiko/pipsi: pip script installer6. GitHub - mitsuhiko/unp: Unpacks things.7. GitHub - chrisallenlane/cheat8. GitHub - jek/blinker: A fast Python in-process signal/event dispatching system.9. GitHub - mitsuhiko/platter: A useful helper for wheel deployments. 10. GitHub - kennethreitz/tablib: Python Module for Tabular Datasets in XLS, CSV, JSON, YAML, &c. 看代码主要是了解别人写代码的方式,语法实践这些内容。看完之后,你可以针对这些项目能解决的问题自己写个项目,写完之后和上述项目去对比一下,看看哪些方面做的不好。进阶阅读项目进阶的时候就要阅读一些相对复杂的项目,它们能帮助你提升Python编程技巧:1. faif/python-patterns。使用Python实现一些设计模式的例子。2. pallets/werkzeug。flask的WSGI工具集。其中包含了实现非常好的LocalProxy、cached_property、import_string、find_modules、TypeConversionDict等。3. bottlepy/bottle。阅读一个Web框架对Web开发就会有更深刻的理解,flask太大,bottle就4k多行,当然如果你有毅力和兴趣直接看flask是最好了的。4. msiemens/tinydb。了解用Python实现数据库。5. coleifer/peewee。了解ORM的实现。6. pallets/click。click已经内置于在flask 0.11里,提供命令行功能,值得阅读。7. mitsuhiko/flask-sqlalchemy。了解一个flask插件是怎么实现的。除此之外Web开发者可以阅读一些相关的项目:1. runscope/httpbin。使用flask,网站是httpbin(1): HTTP Client Testing Service。2. jahaja/psdash。使用flask和psutils的获取Linux系统信息的面板应用。3. pallets/flask-website。 flask官方网站应用。4. pypa/warehouse。如果你使用pyramid,这个新版的PYPI网站,可以帮助你理解很多。当然,2个学习flask重要的资源必须爆一爆:1. GitHub - realpython/discover-flask: Full Stack Web Development with Flask。

2. The Flask Mega-Tutorial。 这个就是《Flask Web开发:基于Python的Web应用开发实战》的原始博客。500lines推荐一个非常厉害的项目 GitHub - aosabook/500lines: 500 Lines or Less, 它里面包含了22个由该领域的专家完成,用不到500行的代码实现一个特定功能的子项目。连Guido van Rossum都亲自来写基于asyncio爬虫了,Nick Coghlan、ajdavis也出场了。更具体的介绍可以看Python 的练手项目有哪些值得推荐? - 小小搬运工的回答。最后再推荐一些更复杂的项目,可能不算练手的范畴,但是对于练手的技艺提高有很大帮助(您总不希望一直写练手项目吧),可以学到更多的项目设计、编程技巧等方面的内容:GitHub - pallets/jinja: The Jinja2 template engineGitHub - mongodb/mongo-python-driver: PyMongoGitHub - andymccurdy/redis-py: Redis Python ClientGitHub - getredash/redash: Make Your Company Data Driven. Connect to any data source, easily visualize and share your data.GitHub - jmcarp/robobrowserGitHub - idank/explainshell: match command-line arguments to their help textGitHub - madisonmay/Tomorrow: Magic decorator syntax for asynchronous code in PythonGitHub - amoffat/sh: Python process launchingGitHub - jeffknupp/sandman: Sandman "makes things REST".GitHub - benoitc/gunicorn: gunicorn 'Green Unicorn' is a WSGI HTTP Server for UNIX, fast clients and sleepy applications.GitHub - jaraco/path.py: "Path" object conveniently wrapping assorted file/path-related functionalityGitHub - grantjenks/sorted_containers: Python Sorted Container Types: SortedList, SortedDict, and SortedSet


最后:

自己多问下为什么学python

如果一门语言没有改变你的编程思维,那么它不值得你去学习”。如果这么说,我们大学的时候,学习了c,c++,java,C#,算是值得学习么?很多时候是不值得,我觉得我们大学的课程就是用java,c#,c++把"C程序设计"又上了一遍.

这是因为,学校的老师会C和java之类的,所以要跟着规矩开这门课,(这也就是为什么,许多学校还在教vb,),这也就是为什么,你所以为的一样就是大家都有For都有while,都有switch..都有Class...都有int 都有float,所谓的不一样就是用C有指针,java没有,这就是为什么教育是失败的,这也就是为什么,我目前认识的几个编程大牛

python的优点:简单 我所说的简单,是相比于象C和C++这样的语言,你为了编程,要学习许多偏底层的东西.在比如,你在学习一个新的编程范式,或者想要马上做个例子看看,试验某个API,如果你是写java的,你不得不去写一个main,写一些构造,即使有IDE这样的东西,能够为你带来代码生成器,而我做得就是写一段“脚本”,或者打开python交互式解释器就行了。

自己认识的python朋友出去工作,工资比较高,然后自己又刚刚好是会python所以选择学习python,这样的人比较危险但是也比较有激励,还有就是觉得python比其他开发语言好用。

学完python前景会咋样

其实我个人是很看好python未来的就业前景的,因为我认识太多的工程师都已经在学python,很多都是月收入大几万的

我个人也并非一直用python。前些年主要用c/c++以及java开发一些通信,移动系统,互联网通信。近3年开始才转向python。坦白的说,这可能与你相处的公司以及环境不大一样。随便举个例子,google的protocol buffer协议一出来就具有c++/python/java三种语言支持。google的广告系统早在03,04年左右就一并对python进行了webservice支持,大部分涉及基础核心系统的公司,都开始对python进行了扩展支持。甚至开源社区的postgresql数据库,除了自身的ansi SQL,pgsql,pg/TCL,PG/PERL之外对python进行了内嵌支持,唯独却没有呼声很高的java。在FREEBSD(MIT)/LINUX(GPL)平台上,对java可能排斥性比较大,但综合而言,目前python发展还没有java那种普及,主要是python大部分工作仍然是在较为深入地系统层和框架层做设计开发,例如django,SQLAlchemy,fail2ban,mail邮件系统,twisted等等。这部分对于那种习惯应用前辈们框架的编码人员而言,缺乏创造力的他们根本无法适用这种开发。尤其在python涉及一些系统层面需要有较强的c/c++能力,这部分人在国内要么就累得要死没时间,要么就啥都不会就会拷贝代码,而国内公司也鲜有主动去做这部分基础劳动的,大多都是等别人做好了在直接拿来用,所以造就了任何技术性的东西出来,国内都是先等等看,然后抄袭应用。

大环境如此,但千万误认为先等等看吧。对于一个技术人员而言,缺乏对新技术的渴望与热情,这是一种非常危险的事情。我工作8年了,按照国内很多的人的说法早已不做代码了,但又一次在听一个老外的演讲,他说他50多岁仍然每天坚持写代码,了解最新的动态,所以他才能做到他们公司的首席科学家,因此它才能时刻指导项目团队前进并保证项目的质量。他坦言对于一个不写代码并且不了解最新的技术动态的技术人员或者技术团队的负责人而言,这种团队也就足够做作小项目,一旦压力和项目过大,就会有很多问题漏出来。

对于新人而言,无论学习什么技术,都要以鼓励的姿态出现。太多用薪水和你个人所看到的现状去衡量一门技术,那绝对是欠缺眼光的。任何一门技术,一旦有人学习,他有可能逐渐成为这个领域的专家,即便再滥再没有人用的开发语言技术,他也有可能就是明日的奠基者或者大师。

自己如何确定目标

在生活中学会不断挖掘自己的潜力。我们都是一个普通人,可能并不清楚自己到底在哪方面占有优势。所以,学着在生活中找到自己的优势,并根据优势选择一定的就业方向。

不随波逐流。不要看周围的人做什么,自己就做什么,也许别人做的并不适合你。别人的优势很可能会成为你的劣势。所以,坚定自己的想法,让自己知道那些方面适合自己,自己可以胜任。

不断尝试可能成为自己的优势。你不知道什么适合自己,所以才要大胆、勇敢地尝试。找到一种可以属于你的独特的优势。

坚定信念。一旦你坚定了自己的信念,就不要被别人的意见或是讽刺或是嘲笑所干扰。别人不是你,不懂的你在想什么,不清楚你开始这件事的源头。你的事情,不了解你的人,没有资格轻易评说。

不茫然,不多想。别让太多的事干扰到你奋斗下去的信念。梦想不容许太多的杂念。那些杂念只会让你的心愈来愈脆弱,多为一个人考虑,到头来,伤害的还是自己。

选择自己学习方法

每个人都有适合自己的方法,有的人去选择自学,有的人选择看视频学习,有的人选择报名培训班,那在这个时候,你就要自己考虑清楚,到底那样对的帮助是最大的,个人觉得是跟着培训班最好的,毕竟人家的实战项目多,我们学软件开发的都知道实战项目对于学好一门语言是 很重要的。

学习python有那些误区

具体里面的误区非常的多,那些就不需要我去写出来,我给你说的一般都是心态的问题,首先一个觉得自己会java和c++,然后我学习python就很牛,但是你要知道语言是有很多相同的地方,但是不是通用,一定要自己学习的仔细。还有一种就是觉得我不会英语,我要先去把英语学习好在来学python。因为自己想还坏主意然后学习,这样的都是容易找进误区的。

怎么样才能学好python

学好python你需要一个良好的环境,一个优质的开发交流群,群里都是那种相互帮助的人才是可以的,我有建立一个python学习交流群,在群里我们相互帮助,相互关心,相互分享内容,这样出问题帮助你的人就比较多,群号是304加上050最後799,这样就可以找到大神聚合的群,如果你只愿意别人帮助你,不愿意分享或者帮助别人,那就请不要加了,你把你会的告诉别人这是一种分享。

感觉写的好,对你有帮助,就点个赞呗,别光只收藏哈.~( ̄▽ ̄)~

?

你可能感兴趣的:(Python 的练手项目有哪些值得推荐?)