作为一名Python老司机,给Python初学者的建议,希望你们少走弯路
一.初聊Python【文末有惊喜福利】
1.为什么要学习Python?
在学习Python之前,你不要担心自己没基础或“脑子笨”,我始终认为,只要你想学并为之努力,就能学好,就能用Python去做很多事情。在这个喧嚣的时代,很多技术或概念会不断兴起,我希望你能沉下心来去学习,不要急于求成,一步一个脚印。当你把某个技术学好、学精后,还是能做一些事情的,甚至能找到喜欢的工作或完成实践项目。
(资料图)
程序语言没有最好,只有最适合。作为一名初学者,我非常推荐你学习Python,为啥?一方面是因为它具有语法清晰、代码友好、易读性高的特点,同时Python拥有强大的第三方库函数,包括网络爬取、数据分析、可视化、人工智能等;另一方面Python既是一门解释性编程语言,又是面向对象的语言,其操作性和可移植性高,被广泛应用于数据挖掘、信息采集、人工智能、网络安全、自动化测试等领域。甚至,很多小学生、高中课程和计算机二级也都陆续增加了Python。
优势
Python最大的优势在于效率。有时候程序员或科研工作者的效率比机器的效率更重要,对于很多复杂性的功能,使用更加清晰的语言能给程序减少更多的负担,从而大大增强程序的质量,其易学性和扩展性也能让新手很快上手。虽然Python底层运行速度要比C语言慢,但Python清晰的结构能解放程序员的时间,同时很方便的和其他编程语言代码(如C语言)融合在一起。
所以,从来没有一种编程语言可以像Python这样同时扎根在这么多领域,并且Python支持跨平台操作,也支持开源,拥有强大的第三方库。尤其随着人工智能的持续火热,Python在IEEE近几年发布的最热门语言中多次排名第一,越来越多的程序爱好者、科技关注者也都开始学习Python。
学习建议
在Python学习过程中,不要觉得你的底子薄或者之前没接触过,就想放弃,很多人还没起跑就选择退赛。我想,只要沉下心来,肯下功夫,就能学好。在学习过程中,一定要去写代码、写代码、写代码,只写真正动手去实践,才能慢慢积累。
同时,编写代码过程中出错也是家常便饭,我现在写Python代码每天不出点错,心里都躁得慌,所以遇到错误,学会百度、谷歌去解决真的非常重要,它也是你学习能力的一种提升,实在找不到错误,可以去开源论坛、社区、学习群里提问
接下来我给出前辈许向武老师推荐的Python程序员成长路线图,包括:基础语法–>语感训练–>课题练习–>分方向继续学习–>中级程序员–>拓展深度和广度–>高级程序员。
这里,给出我学习Python的一些历程和技巧。我最早接触Python是2013年,主要是因为研究生方向是自然语言处理,需要通过Python抓取数据并进行分析,所以就选择了它。那些年Python的资料很少,也没这么火热,但也一直坚持着,具体建议如下:
先把环境安装,开始编写第一个Python代码,别再去等明天了
学习过程中切勿看视频(书籍),喝着奶茶,就是一天,一定要动手敲代码啊
通常先了解Python基础语法,推荐MOOC北理工嵩天老师的视频和runoob语法,当然B站和CSDN上也有很多免费资料,大家可以去选择
基础语法大致掌握后可以尝试学习Python网络爬虫,因为不论是数据分析、机器学习、渗透测试等,都会涉及到爬虫技术,只有拥有自己的语料,才能处理更多问题。爬虫方面不用太深入,掌握两门技术即可
Urllib、Requests、BeautifulSoup、XPath、Selenium、Scrapy、分布式爬虫
接下来学习Python可视化分析(词云)、微信操作、邮箱发送等功能,这些知识能有效提高你的编程兴趣
人工智能方向:包括机器学习(回归 | 聚类 | 分类)、深度学习(TensorFlow | Keras | Pytorch)学习,建议结合实际科研或项目进行深入研究
图像识别方向:包括图像处理、OpenCV、模式识别、机器学习、深度学习、目标检测学习,也建议结合实际科研或项目进行深入研究
其他方向学习:Web网站开发、网络安全、自动化测试、应用程序编写
学习路上没有捷径,只有坚持,但你却能通过Python不断提升你的学习兴趣,做一些喜欢的事,喜欢上这门语言。最后给出当年大三学习Python时激励自己的话:
If not now, when? If not me, who?
如果不是为了自己奋斗,又是为谁;如果不是现在奋斗,什么时候开始呢?
关于Python技术储备
学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!
Python入门基础教程【文末有惊喜福利】
第1章 快速上手:基础知识
交互式解释器
算法是什么
数和表达式
变量
语句
获取用户输入
函数
模块
保存并执行程序
字符串
第2章 列表和元组
序列概述
通用的序列操作
列表:Python的主力
元组:不可修改的序列
第3章 使用字符串
字符串基本操作
设置字符串的格式:精简版
设置字符串的格式:完整版
字符串方法
小结
第4章 当索引行不通时
字典的用途
创建和使用字典
第5章 条件、循环及其他语句
再谈print和import
赋值魔法
代码块:缩进的乐趣
条件和条件语句
循环
…
第6章 抽象
抽象和结构
自定义函数
参数魔法
作用域…
第7章 再谈抽象
对象魔法
类
关于面向对象设计的一些思考
第8章 异常
异常是什么
让事情沿你指定的轨道出错
捕获异常
异常和函数
…
第9章 魔法方法、特性和迭代器
如果你使用的不是Python 3
构造函数
元素访问
…
第10章 开箱即用
模块
探索模块
标准库:一些深受欢迎的模块
…
第11章 文件
打开文件
文件的基本方法
迭代文件内容
第12章 图形用户界面
创建GUI示例应用程序
使用其他GUI工具包
…
第13章 数据库支持
Python数据库API
SQLite和PySQLite
…
第14章 网络编程
SocketServer及相关的类
多个连接
…
第15章 Python和Web
屏幕抓取
使用CGI创建动态网页
使用Web框架
…第16章 测试基础
先测试再编码
测试工具
超越单元测试
…
第17章 扩展Python
鱼和熊掌兼得
简单易行的方式:Jython和IronPython
…
第18章 程序打包
第19章 趣味编程
第20章 项目1:自动添加标签
第21章 项目2:绘制图表
第22章 项目3:万能的XML
第23章 项目4:新闻汇总
第24章 项目5:虚拟茶话会
第25章 项目6:使用CGI进行远程编辑
第26章 项目7:自建公告板
第27章 项目8:使用XML-RPC共享文件
第28章 项目9:使用GUI共享文件
第29章 项目10:自制街机游戏
文中所展示内容获取方式:
1.一键三连+关注(重点)
2.后台主动留下痕迹:“资料”即可 (重点)
关键词: