著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
Repetition is the mother of all learning. 重复是学习之母。
看、看、看、看、看,看视频,看书,看公众号....倘若学习编程只要看看书、看看视频、听听讲就能够学会,那编程本身也失去魅力了。
现在大家图方便,搜集大堆大堆的视频教程去看,看的时候感觉都懂了。看完什么都忘了。要动手啊!你学编程,无论是工作,还是做自己的项目,都是要一行代码一行代码地去敲出来的。这个过程才是真正学习的过程。
Learning By Doing, 在实践中去学习,才是最高效的。你练习敲代码的时候,是同时在记忆、理解、消化这些知识点。当你亲自敲出一个项目,那种成就感更加地会激励你去深入学习的。这就是动手的好处,是思考的,灵活的,快乐的学习方式。
不厌其烦地说,说完,还要拿出许多的练手项目给你们去体验。上次有人说,骗子还要注册好麻烦。连注册都不想做的人,恐怕是学不好的。没有让你下载App,广告也没有,更不用花钱.....在线的Linux云端环境,点开就能学习的啊。这大概就是浮躁吧......
算了不发牢骚了,分享给真正想要学习的人:
入门知识
基础学习
昨夜下了一场雨,早上一棵树倒了。树倒了,因为根基不牢。要把基础打牢,别怕重复。
Web框架基础
基础巩固与运用
通过一个简单的例子来实现破解验证码。从中我们可以学习到 Python 基本知识,PIL 模块的使用和破解验证码的原理。
用 50 行 Python 代码完成图片转字符画小工具。通过本实验将学习到 Linux 命令行操作,Python 基础,pillow 库的使用,argparse 库的使用。
使用 Python3 去识别图片是否为色情图片,我们会使用到 PIL 这个图像处理库,会编写算法来划分图像的皮肤区域。其中涉及到Python3 基础知识,肤色像素检测与皮肤区域划分算法,Pillow 及argparse 的使用。
通过Python3实现将关键信息隐藏在图片的效果,主要目的是为了不让预期接收者以外的人知晓传递的内容。与电视剧中使用特殊墨水传递信息一样,表面看就是一张什么都没写的白纸,实则暗藏着重要信息。
仅用200行的 python 代码完成2048小游戏的编写。通过本实验将学习 Python 基本知识,状态机的概念,以及编写 python 游戏的步骤。
使用 Python 来解析纯文本生成 HTML 页面的小程序。从中我们将使用Python基础语法知识以及HTML标记语言知识,以及如何用 Python 将纯文本分成一个一个的文本块,并对它对解析。文本中使用部分简单的 Markdown 语法。通过学习加深巩固Python、HTML的基础知识。
基于OpenGL实现一般CAD软件都会具备的基础功能:渲染显示3D空间的画面并可以操作3D空间中物体。
模版引擎使得用户界面能够与业务数据分离,前端与后端分离,它通常用于渲染页面文件。本课程将使用Python实现一个具备基础功能的模板引擎。
使用 OpenCV 处理图片视频,将视频转为字符画序列,再在终端中播放字符动画。除了 OpenCV 的操作,还会了解光标定位转义编码的使用。
使用 Python3 的 wordcloud 扩展包制作词云,并通改进 wordcloud 使其能够制作中文词云。此外,还将分享如何用自己喜欢的图片作为词云轮廓对词云进行定制。
在这个人人自拍的年代,每个人的智能手机中至少都装了一款美颜相机或者美图软件,而这些软件实现美图功能又主要是靠滤镜来实现的。本教程带领大家使用 Python 编写一个简单的滤镜程序。
通过 OpenCV 库来实现人脸面部特征交换,其实就是将第二张人脸的眼睛、鼻子和嘴巴通过程序自动裁剪适配并覆盖到第一张人脸上,并且为了使得修改后的照片看着更加自然,我们还需要调整皮肤颜色。
裁剪图片时,需要尽可能保留下图片中最关键或最重要的信息。在本课程里我们将学习如何使用 Python3 智能的裁切图片。
相信用过 Windows 的同学一定都对 Windows 自带的画板不陌生吧,虽然功能简单却也还实用。今天我们就是要利用 Pygame 模块来自己实现一个功能更加简单的画板。
15.微信变为聊天机器人
现在的日常生活已经离不开微信,本文将会抛砖引玉演示如何使用Python调用微信API做一些有意思的东西。
用 python 解决数学题。 说到数学题,相信大家都不陌生,从小学到大学都跟数学打交道。 其中初中的方程组,高中的二次曲线,大学的微积分最为头疼,今天我们将使用 python 来解决方程组问题,微积分问题,矩阵化简。
使用 Python 创建照片马赛克。我们将目标图像划分成较小图像的网格,并用适当的图像替换网格中的每一小块,创建原始图像的照片马赛克。
数据与计算
针对《釜山行》剧本的文本,使用 python3 编写代码分析文本中人物的共现关系,完成对《釜山行》文本的人物关系提取,并利用Gephi软件对提取的人物关系绘制人物关系图。
2.Python 气象数据分析:《Python 数据分析实战》
本教程对意大利北部沿海地区的气象数据进行分析与可视化。我们在实验过程中先会对数据进行清洗,然后运用 Python 中 matplotlib 模块的对数据进行可视化处理,最终从清晰的图表中得出我们的结论。
本教程将利用NBA在2015~2016年的比赛统计数据进行回归模型建立,最终在今年2016~2017的常规赛中预测每场比赛的输赢情况。
介绍隐含波动率的定义及其背后的逻辑,然后讨论3种计算隐含波动率的方法,分别基于for循环、while循环和二分搜索。
本教程将会讨论数据科学中的无监督挖掘技术,先精心探讨了基于距离方法,核方法等内容,接着会对聚类与异常点检测技术进行详细讨论。
本教程将会从电影题材分类的例子入手,详细讲述 k-近邻算法的原理。在这之后,我们将会使用该算法实现手写数字识别系统,书籍教程配套实验练习,帮助您更好得实战。
12.神经网络实现人脸识别任务
网络编程
综合进阶项目
本教程使用 Python 脚本爬取某租房网站的房源信息,利用高德的 js API 在地图上标出房源地点,划出距离工作地点1小时内可到达的范围。在项目实现的过程中熟悉了 requests 、BeautifulSoup、csv 等库的简单使用。
2.基于 Flask 与 RethinkDB 实现TODO List
本教程将学习 RethinkDB 作为数据库后端,Backbone.js 作为前端的技术栈,并实现一个清单应用。从中我们可以学习 Flask Web 应用框架,及 Rethinkdb 文档型数据库和 Backbone.js web开发框架。
本教程将通过使用 Python 语言实现一个 Web 服务器,探索 HTTP 协议和 Web 服务的基本原理,同时学习 Python 如何实现 Web 服务请求、响应、错误处理及CGI协议,最后会使用 Python 面向对象思路进行重构。
我们将基于 Tornado 框架实现一个简单的异步 Redis 客户端,通过该客户端我们可以设置和读取 Redis 中的数据。其中涉及设置 virtualenv 环境,网络开发,Socket,Redis协议,Tornado框架。
使用Python Flask Web开发框架实现类似StackOverflow的在线问答平台LouQA,具备提问,回答,评论等功能。学习数据库设计,Python Web 开发相关知识。
学一门编程语言最好的时间是十年前,其次是现在。
加油。
补充在下面
对于大部分新学编程的人来说,其实并不是学不下去,其实主要的问题是学了然后不知道可以干啥。我会了python的大部分基本语法,但是我除了会写hello world,除了能print一些数组,字典,我啥都做不了啊。所以这里推荐几个可以值得学习的新手可以作为了解python的一些项目:
1.算法类的:
donnemartin/interactive-coding-challenges
这是一个一些入门算法的做题 也支持jupyterbook哦。
2.web类的Django:
可以自己尝试搭建一个技术类的私有博客,把自己的一些笔记和资料保存在上面哦。
3.如果是GUI方面的话
learn GUI programming with PyQt4是个很不错的GUI教程 还有对应PyQt5的教程版本
4.当然还是现在的大热python的人工智能
推荐个大博士的Github:
PeterJaq/machine-learning-for-software-engineers
不光是关于编程,还有关于人工智能的算法具体的意义和实现,我觉得他的教程在中文教程里是属于没有很深的数学功底也可以很好理解很多贝叶斯方法的教程,点赞啦~
5.自然语言处理~ LDA啊LSA啊啥的自己有兴趣可以去实现一下,这是有关于推荐系统的,网易淘宝包括百度的很多推荐系统都是基于这个的。
补充内容:
上面的内容可以让大家对于新手能用Python做什么的一个概述,但是实际操作中还有很多问题会遇到。毕竟作为一个新手特别是可能并没有经过一个系统的编程学习和相关学科很好基础的人,我觉得下面的一些教程都可以给大家一个很好的帮助。
以下的内容有一部分是从python区的一些其它人的回答中引用的,我会标注出来,大家可以移步去看一下。
入门学习类的:
先列书单
1.笨办法学 Python中文版(Learn Python In Hard Way)学编程是一步一步的事情。
2.The Hitchhiker’s Guide to Python!
3.Fluent Python这本书大爱!
4.The Python Standard LibraryPython标准库,可以作为工具书使用,将常伴在你的左右。
很多人人会列一大堆书,但是我相信短期内是看不完的,我就先列四本,其中前三部推荐个可以看完的。代码!!!一定要!!!自己去敲一遍!!!
再列学习网站:
1.PythonCodeCademy的网课,个人觉得不错,可以去尝试一下。
2.Programming for Everybody (Getting Started with Python) | CourseraCoursera也是入门网课,很不错哦。
以上的两个课程可以二选一,还是这句话,老老实实的去写一遍代码。
3.Algorithms | Coursera算法课,虽然不是Python写的但是如果以后想要从事编程行业,这是必须要的一个思维方式,所以我希望大家可以去看一下。
4.Data Structures and Algorithms | Coursera数据结构和算法,理由同上。
5.Python全部 - 课程 - 实验楼(个人感觉几乎中国的互联网教育网站都有点急功近利,啥都不会就Po项目,然后Po代码也说不清楚原理。)但是有一点他们很好的告诉了你你可以去完成什么,可能你一下子看不懂哪一步是什么意思,但是修行在个人,去查阅工具书,去弄懂每一句的意义,然后你会发现你的进步很快。
6.xianhu/LearnPython不错的有意思的一个学习项目仓库,去看看,然后尝试去重构以下。
有关机器学习类的:
1.lijin-THU/notes-python一个python机器学习基础的笔记,对于如何使用Numpy,Pandas,Matplotlib的部分我觉得非常的有价值,同时也罗列了一些简单的程序实例。
2.TensorFlow实战 (豆瓣)来自于黄博士的一本很好的深度学习教程,从自编码出发,到卷积神经网络,深层网络以及循环神经网络,也附带介绍了一些基础知识。在对机器学习的理论只是有入门理解之后这本书可以最快的带你进入实战的部分。
3.Machine Learning | Coursera之前百度大脑的吴恩达,IEEE官网贴结婚照那个人,作为机器学习的入门课程非常适合每一个人。
4.ZuzooVn/machine-learning-for-software-engineers之前提过的那个大博士的教程,非常的喜欢如果书和公式给你带来的是科学上的理解,这个大博士的教程则给你通俗上的解释了各种不同的机器学习模式,而且他的教程是一步一步教你打代码的,非常适合新手。
5.Applied Machine Learning in Python | Coursera也是Coursera的课程这个可以作为补充教程。
网友评论