你们所说的什么要怎样数据分析、爬虫、Web 等,在我看来那不是精通 Python,而是精通某一领域,抛开 Python 换用另一门语言也可,在我看来,精通 Python 语言大约需要如下这些步骤(你有你的学习方法):

1了解基本语法

这是最容易的一级,掌握了 Python 的基本语法,可以通过 Python 代码实现常用的需求,不管代码质量怎么样。这部分内容

2熟练使用常用的库

熟悉常用 standard library 的使用,包括但不限于 copy / json / itertools / collections / hashlib / os / sys 等

熟悉常用的第三方库,这就根据每个人不同的用法而有所不同了,但是一定要掌握你所常用的那个领域里的第三方库。

3Pythonic

这一级别比上一级别稍难,但是还是可以轻松达到。所谓 Pythonic,就是相比其它语言,Python 可以通过更加优雅的实现方式(不管是语法糖还是什么),比如(包括但不限于) with、for-else、try-else、yield 等。

另外你还需要掌握这些所谓魔法的实现原理,了解 Python 在语法层面的一些协议,可以自己实现语法糖。如 with 的实现方式(上下文管理器)等。达到这一级,你的代码可以看起来很漂亮了。

4高级玩法

掌握 Python 的内存机制、GIL 限制等,知道如何改变 Python 的行为,可以轻松写出高效的优质的 Python 代码,能够轻松分辨不同 Python 代码的效率并知道如何优化。

5看透本质

阅读 Python 的 C 实现,掌握 Python 中各种对象的本质,掌握是如何通过 C 实现面向对象的行为,对于常见的数据结构,掌握其实现细节。到这一步,需要将 Python 源码学习至少一遍,并对关键部分有较深层次的理解。

6手到拈来,一切皆空

不可说,不必说~

以上步骤并不是打怪升级,不存在到了一级再去第下一级,你完全可以在熟练标准库的过程中掌握语言的实现原理等,这并不矛盾。

精通python语言要多久-这样学可以精通Python语言相关推荐

  1. 30岁、高中学历、零基础、能不能自学Python?要多久?学到什么程度可以找到工作?

    前言 零基础自学三个月 足够找到工作的了.如果你是全职学的话,学习300个小时 就足够在北上广 找到一份 6000左右的入门工作了(2020年待遇水平). 我发现很多人有个误区,认为转行 软件开发 一 ...

  2. python和linux运维学哪个--学习Python在Linux运维上的应用应该看哪些书 什么样的学习路线...

    python 元类生成类的方法是什么类型的 首先请一下习惯,python中的类名习惯用大写字母开 我是这样理解的,不一定对,通过type() ,还是实例方法instancemethod 只不过B这个类 ...

  3. c语言学好了可以学啥,学好c语言可以干什么?

    在学习的过程中,应该会有很多人会很疑惑,我学这个干嘛?对我以后能有什么帮助呢?我想,其中也会有朋友疑惑,学好C语言能干什么?下面小编将给大家解答疑惑. C语言是一种计算机程序设计语言.具有高级语言的特 ...

  4. python入门要多久-初学者如何快速上手python入门要多久

    今天跟大家讨论一下对于一个新手如何快速入门python. python是一种非常接近人类语言的解释性高级语言,如果你学过java,应该知道解释性语言区别于编译性语言.python作为一种高级语言,功能 ...

  5. 从零开始学python人工智能课程_从零开始学人工智能(12)--Python · 决策树(零)· 简介...

    原标题:从零开始学人工智能(12)--Python · 决策树(零)· 简介 感谢关注天善智能,走好数据之路↑↑↑ 欢迎关注天善智能,我们是专注于商业智能BI,人工智能AI,大数据分析与挖掘领域的垂直 ...

  6. 程序员入门c语言还是java,先学java还是c语言?入门学哪种语言?

    很多刚接触编程语言的小伙伴都会有一个疑问先学 Java 还是 C 语言?今天 W3Cschool 小编就来和大家简单介绍一些,做个对比相信小伙伴们能够自行作出适合自己的判断. 在探讨先学 Java 还 ...

  7. 天津工业大学c语言题库,天津工业大学计算机专业C语言经典笔记

    天津工业大学计算机专业C语言经典笔记 经典笔记 1. 将一个二维数组的行和列的元素互换存到另一个数组里. #include main() { int a[2][3]={{1,2,3},{4,5,6}} ...

  8. 中北c语言程序设计,中北大学软件学2013届C语言程序设计实训题目.doc

    中北大学软件学2013届C语言程序设计实训题目 C语言程序课程设计题目 (孟龙)题目1:年历显示 功能要求: 输入一个年份,输出是在屏幕上显示该年的日历.假定输入的年份在1940-2040年之间. 输 ...

  9. 南京邮电大学通达学院c语言实验报告,南京邮电大学通达学院c语言程序报告.docx...

    南京邮电大学通达学院c语言程序报告 南京邮电大学通达学院程序设计(上机)报告 题 目: R015M P008E 专 业 学 生 姓 名 班 级 学 号 指 导 教 师 日 期 2015年5月 评 分 ...

最新文章

  1. 一个技术人的2016成长和2017小目标
  2. python 画三维函数图-Python之Numpy:二元函数绘制/三维数据可视化/3D
  3. linux内核研究(二)
  4. 20145326蔡馨熠《信息安全系统设计》第2周学习总结
  5. ASP.NET企业开发框架IsLine FrameWork系列之五--DataProvider 数据访问(中)
  6. mimo-ofdm无线通信技术及matlab实现_智芯文库 | FPGA无线通信课程连载——扰码的原理及实现...
  7. error Microsoft Visual C++ 14.0 is required 解决方案
  8. java 类 赋值_java类怎样赋值
  9. (java)word转html并提取word中的目录结构树生成到html页面中的左边树
  10. python多个条件组合覆盖_白盒测试系列(五)条件组合覆盖
  11. 深度学习入门基础:图像分类网络整理(最全)
  12. 分类(category)的使用
  13. Fabric.js IText 手动设置斜体
  14. 已知a,b,c都是1位整数,求当三位整数abc、cba的和为1333时a、b、c的值
  15. blastp 短肽比对求助
  16. 因《C程序设计伴侣》的争执,谈谭浩强《C程序设计》的批评
  17. 前端刷新token,判断token是否过期,若没有过期则刷新token,过期则退出登录
  18. Markdown快速指南
  19. 浅析Statement和PreparedStatement的区别
  20. 华为手机——解锁步骤

热门文章

  1. JavaEE Web开发之Servlet篇
  2. a标签代替input[button]
  3. 数据回发时,维护ASP.NET Tree控件位置
  4. sql语句的编程手册(2)
  5. 1. 机器学习-特征工程
  6. 上传文件重命名后,下载时,用文件原名,不用Guid命名
  7. MySQL数据库数据类型以及INT(M)的含义
  8. 基础中的基础。CANVAS step01
  9. python的快速入门-1.1、Python快速入门(0529)
  10. python基础知识资料-Python基础知识汇总