1.弄清楚你的动机是什么
在开始深入学习Python在线之前,值得问问自己为什么要学习它。这是因为这将是一个漫长而有时痛苦的旅程。没有足够的动力,你可能无法完成。
找出激励你的动力将帮助你找到一个最终目标,一条让你无所畏惧的道路。您不必弄清楚一个确切的项目,只是您感兴趣的一般区域。
选择您感兴趣的区域,例如:
- 数据科学/机器学习
- 移动应用
- 网站
- 游戏
- 硬件/传感器/机器人
- 用于自动化工作的脚本
想要学习Python?Python学习库,知识兔有最齐全的Python课程库,很多精品课程。
2.学习基本语法
我不能强调你应该只花费最少的时间在基本语法上。您可以更快地学习项目,学习的速度就越快。稍后卡住时,您可以随时返回语法。理想情况下,您应该在这个阶段花费几周时间,绝对不会超过一个月。
3.制作结构化项目
一旦学会了基本语法,就可以自己开始制作项目了。项目是一种很好的学习方式,因为它们可以让你运用你的知识。除非你运用你的知识,否则很难保留它。
让我们看看每个领域的结构化项目的一些好资源:
数据科学/机器学习
- Dataquest - 以交互方式教您Python和数据科学。您可以分析一系列有趣的数据集,从CIA文档到NBA球员统计数据。您最终会构建复杂的算法,包括神经网络和决策树。
- Python for Data Analysis - 由一个主要的Python数据分析库的作者编写,它是在Python中分析数据的一个很好的介绍。
- Scikit-learn文档 - Scikit-learn是主要的Python机器学习库。它有一些很棒的文档和教程。
- CS109 - 这是一门教授Python用于数据科学的哈佛课程。他们在网上有一些项目和其他资料。
移动应用
- Kivy指南 - Kivy是一款可以让你用Python制作移动应用程序的工具。他们有一个如何入门的指南。
网站
- Flask教程 - Flask是一个流行的Python Web框架。这是入门教程。
- Bottle教程 - Bottle是Python的另一个Web框架。这是如何开始使用它。
- 如何使用Django进行探索 - 使用Django的指南,这是一个复杂的Python Web框架。
游戏
- Codecademy - 引导您完成几个简单的游戏。
- Pygame教程 - Pygame是一个用于制作游戏的流行Python库,这是一个教程列表。
- 使用Pygame制作游戏 - 一本教你如何用Python 制作游戏的书。
- 使用Python创建自己的计算机游戏 - 这本书将指导您如何使用Python制作多个游戏。
您可以使用Pygame制作的游戏示例。这是Phil Hassey的Barbie Seahorse Adventures 1.0。
硬件/传感器/机器人
- 将Python与Arduino一起使用 - 学习如何使用Python来控制连接到Arduino的传感器。
- 使用Raspberry Pi学习Python - 使用Python和Raspberry Pi构建硬件项目。
- 使用Python学习机器人 - 学习如何使用Python构建机器人。
- Raspberry Pi Cookbook - 学习如何使用Raspberry Pi和Python构建机器人。
用于自动化工作的脚本
- 使用Python自动化无聊的东西 - 学习如何使用Python自动执行日常任务。
一旦你在自己的领域完成了一些结构化项目,你就应该能够开始自己的项目了。但是,在你做之前,花一些时间学习如何解决问题是很重要的。
4.自己开展项目
一旦完成了一些结构化项目,就可以自己开展项目了。您仍然会咨询资源和学习概念,但您将会致力于您想要的工作。在深入研究自己的项目之前,您应该可以轻松调试程序的错误和问题。以下是您应该熟悉的一些资源:
- StackOverflow - 社区问答网站,人们讨论编程问题。您可以在此处找到特定于Python的问题。
- Google - 每位经验丰富的程序员最常用的工具。在尝试解决错误时非常有用。 这是一个例子。
- Python文档 - 在Python上查找参考资料的好地方。
一旦掌握了调试问题,就可以开始处理自己的项目了。你应该从事你感兴趣的事情。例如,我在学习编程后很快就开始使用工具来自动交易股票。
以下是一些有趣的项目提示:
- 扩展您之前使用的项目,并添加更多功能。
- 转到您所在地区的Python 聚会,找到正在处理有趣项目的人。
- 查找要参与的开源软件包。
- 看看是否有任何当地的非营利组织正在寻找志愿者开发者。
- 查找其他人制作的项目,看看您是否可以扩展或改编它们。 Github是一个找到这些的好地方。
- 浏览其他人的博客文章,找到有趣的项目创意。
- 想一想能让您的日常生活更轻松,并构建它们的工具。
记得从很小的开始。从非常简单的事情开始通常很有用,这样你就可以获得信心。最好开始一个小项目,你完成了一个永远不会完成的巨大项目。在Dataquest,我们指导了一些项目,这些项目可以为您提供可以构建的小型数据科学相关任务。
找到其他人合作以获得更多动力也很有用。
如果你真的想不出任何好的项目想法,我们讨论的每个领域都有一些:
数据科学/机器学习
- 可视化州的选举投票的地图。
- 一种预测您居住天气的算法。
- 一种预测股市的工具。
- 一种自动汇总新闻文章的算法。
移动应用
- 一个应用程序,用于跟踪您每天走多远。
- 一个向您发送天气通知的应用。
- 基于位置的实时聊天。
网站
- 一个帮助您计划每周膳食的网站。
- 允许用户查看视频游戏的网站。
- 一个记笔记的平台。
游戏
- 基于位置的移动游戏,您可以捕获区域。
- 你编程解决难题的游戏。
硬件/传感器/机器人
- 监控家庭温度的传感器,让您远程监控您的房屋。
- 更智能的闹钟。
- 检测障碍物的自动驾驶机器人。
用于自动化工作的脚本
- 用于自动化数据输入的脚本。
- 从Web上抓取数据的工具。
我自己的第一个项目是将自动化的论文评分算法从R改编为Python。它看起来并不漂亮,但它给了我一种成就感,并让我开始建立自己的技能。
关键是选择一些东西并做到这一点。如果你太擅长选择完美的项目,那么你将永远不会制造一个项目。
5.继续努力完成更艰苦的项目
不断增加项目的难度和范围。如果你对你正在建造的东西完全感到满意,那就意味着是时候更努力了。
以下是关于何时到来的一些想法:
- 尝试教新手如何建立你做的项目。
- 你可以扩展你的工具吗?它可以处理更多数据,还是可以处理更多流量?
- 你能让你的程序运行得更快吗?
- 你能让你的工具对更多人有用吗?
- 你会如何商业化你所做的?
往前走
在一天结束时,Python一直在不断发展。只有少数人可以合法地声称完全理解这种语言,并且他们创造了它。
你需要不断学习和研究项目。如果你这样做,你会发现自己从6个月前回顾你的代码,并思考它是多么可怕。如果你达到这一点,你就走在了正确的轨道上。只对你感兴趣的东西工作意味着你永远不会被烧坏或无聊。
Python是一种非常有趣且有益的语言,我认为如果找到合适的动机,任何人都可以达到高水平的熟练程度。