如何系统学Python?听听Facebook一线工程师怎么说 | 极客时间

论坛 期权论坛 期权     
InfoQ   2019-7-20 20:09   3250   0
前几天, PYPL (即编程语言流行指数,基于 Google 搜索频率而定)出炉了5 月编程语言排行榜,Python 拿下 NO.1,成为最流行的编程语言。TIOBE 排行榜也显示, Python 的流行度屡创新高,目前排名第四,并保持高速增长。
也难怪,作为大数据和人工智能时代的必备语言,Python 优点颇多,它语言简洁、开发效率高、可移植性强,经过多年的生态建设,Python 有了大量的函数库,尤其在数据分析和科学计算领域。另外,函数在 Python 中是一等公民,所以 Python 同时也是一种函数式编程语言。
为了在大数据和 AI 时代更具竞争力,学 Python 的程序员越来越多,甚至不少人把 Python 当作第一语言来学习。许多人觉得 Python 功能强大还上手轻松,学习曲线也没那么陡峭,得来全不费工夫。但是,推开 Python 的大门你会发现,Python 入门容易但精通很难。看似语法记得滚瓜烂熟,但一进入实际项目,就被打回了原型。
比如,你要去做一个电商后台,存储着每件产品的 ID、名称和价格。现在需要根据商品 ID 找出价格,如何使用最合适的数据结构呢?

在 Python 中字典、集合都是经过高度性能优化的数据结构,如果采用列表来存储数据并进行查找,时间复杂度是多少?

换成字典呢?哪个更高效?事实上,采用不同数据结构存储十万数据,查找速度差异就有可能差出几千倍。

再比如,Python 中的协程和线程有什么区别?

生成器如何进化成协程?

并发编程中的 future 和 asyncio 有什么关系

如何写出线程安全的高性能代码呢?
据我所知,大部分初学者都可能卡在这里,前进无门。但是,我们不得不说,解决这些问题,是一名合格 Python 工程师的基本能力。为了帮助用户从一个初学者进阶为优秀的 Python 工程师,我联合极客时间开设了一个专栏 --《Python 核心技术与实战》,希望能帮你系统地提升 Python 实战编程能力。
专栏中我们不会去纠结某些生僻的知识点,而是从实际出发,以工作中遇到的实例为主线,去讲解 Python 的核心技术和应用。带你从基础语法起步,掌握语言的高级用法,再到项目中进行实战开发,让你把学到知识点通过项目都串联起来,融会贯通,形成自己的 Python 学习框架图。
整个专栏内容是基于 Python 最新的 3.7 版本来讲解,让你告别网上很多陈旧的学习资料。无容置疑,Python 3 才是 Python 的未来。


    扫码,免费试看
我是谁?会讲什么?我是景霄,Facebook 资深工程师。目前从事机器学习的相关工作,主要工作领域是人工智能的推荐排序系统与算法。我曾领导多个上亿用户级产品的开发与落地,有着丰富的工程与实战经验。加入 Facebook 之前,我分别在哥伦比亚大学计算机系和武汉大学通信工程系(专业第一)获得硕士和学士学位。
在《Python 核心技术与实战》里,我会带你从入门到进阶掌握下面 Python 核心知识点。


1.Python 基础入门必学知识:【Python 基础数据结构】【Python 基础语法】【文件操作】【错误与异常处理】【Python 面向对象】【模块化】
第一步,你需要掌握 Python 的核心基础知识。当然,不同于其他基础教材,我不仅仅只讲基础概念、操作,同时也为你整理了很多进阶难度的知识,或是一些重难点、易错点等需要注意的地方。不仅可以让入门级的程序员查漏补缺,打捞基础,也能让有经验的程序员,重新从工程角度认识基础,升华理解。
2.Python 进阶核心知识必学知识:【Python 协议】【Python 高级语法】【Python 正则表达式】【Python 并发编程】【垃圾回收机制】【项目实战】
第二步,进阶 Python 核心知识点,比如装饰器、并发编程等等。如果你的工作只是写 100 行以下的脚本程序,可能不怎么会用得到。但如果你做的是大型程序的开发,则非常有必要。
3. 规范:编写高质量的 Python 程序这部分着重于教你把程序写得更加规范、更加稳定。我在实际工作中见过不少程序员,会写程序,但写得实在有点“惨不忍睹”,导致最后调试起来错误不断,修改非常费劲儿。因此,我觉得用单独一个版块讲解这个问题非常有必要。
当然,我不会用一些似是而非的规范来说教,而是会用具体的编程操作和技巧,教你提高代码质量。比如,如何合理地分解代码、运用 assert,如何写单元测试等等。
4.Python 实战,串联整个知识体系:带你搭建量化交易系统必学知识点:【RESTful】【Socket】【Pandas】【Numpy】【Kafka】【RabbitMQ】【MySQL】【Django】
没上过战场开过枪的人,不可能做主官;没有实战经验的语言学习者,不可能成为高手。这部分,我会通过量化交易系统这个具体的实战案例,带你综合运用前面所学的 Python 知识。
真正要掌握一门编程语言,仅仅学会分散的知识点是不够的,还必须要把知识点串联起来,做一些中型的项目才能有更深的领悟与提高。
另外,专栏里的所有内容都基于 Python 最新的 3.7 版本,其中有大量独家解读、案例,以及不少我阅读源码后的发现和体会。同时,在层次划分上,我希望能难易兼顾,循序渐进。专栏中既有核心的基础知识,也有高级的进阶操作,尽量做到“老少皆宜”。
详细目录[h1]


限时订阅福利
  • 限时优惠 68(原价 99 ),1 场电影的价格带你掌握 Python 核心技术;分享海报,邀请好友订阅即可获得24 返现,多邀多得,上不封顶,APP 内立即提现。
  • 订阅专栏后,在留言区里聊聊「你用 Python 来解决什么问题?在工作中有哪些应用?」,点赞第一名,可获得极客时间 99 任意课程,活动截止 5 月 9 日 18:00。
  • 另外,新用户还能获得5 元优惠券,购买专栏更便宜。
[/h1]
       扫码,免费试看

  • 极客时间充值金额限时膨胀,充 100 元得 120 元,多充多得。
点「阅读原文」,立享充100 元得 120 元,买课更省钱。
分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:170
帖子:36
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP