稍微关心编程语言的使用趋势的人都知道,最近几年,国内最火的两种语言非 Python 与 Go 莫属,于是,隔三差五就会有人问:这两种语言谁更厉害/好找工作/高工资…… 对于编程语言的争论,就是猿界的生理周期,每个月都要闹上一回.到了年末,各类榜单也是特别抓人眼球,闹得更凶. 其实,它们各有对方所无法比拟的优势以及用武之地,很多争论都是没有必要的.身为一个正在努力学习 Python 的(准)中年程序员,我觉得吧,先把一门语言精进了再说.没有差劲的语言,只有差劲的程序员,等真的把语言学好了,必定是“…
最近出了两件大新闻,相信大家可能有所耳闻. 我来当个播报员,给大家转述一下: 1.中国队在第 11 界罗马尼亚数学大师赛(RMM)中无缘金牌.该项赛事是三大国际赛事之一,被誉为中学奥数的最高难度.其中一道题,令中国队全军覆没. 2.一个出自清华姚班,毕业于斯坦福的女博士,她的毕业论文成了学术圈的“爆款”.这篇论文研究的主题是——如何让机器学会理解人类语言? 每天的新闻多如牛毛,唯独这两件引起了我的注意.它们跟本期的荐书栏目也是强关联,下面就给大家说道说道. 上图标出了中国队成绩最好的三名队员.前…
本文原创并首发于公众号[Python猫],未经授权,请勿转载. 原文地址:https://mp.weixin.qq.com/s/ArN-6mLPzPT8Zoq0Na_tsg 最近,猫哥的 Python 技术学习群里进来了几位比较特殊的同学:一位初三的以编程为兴趣的女生.一位在大学里刚开始执教 Python 的老师.一位四十多岁仍在编程一线的工程师. 自从写公众号以来,我就遇到了各色各样的人,比如,一位代替小学生儿子来加群的牙医父亲.一位多年自由职业每天炒股的前黑客.一位来咨询课程的自学编程的听障…
上一篇文章记录了怎么安装Python环境,同时也成功的在电脑上安装好了Python环境,可以正式开始自己的编程之旅了.但是现在又有头疼的事情,该用什么来写Python程序呢,该用什么来执行Python程序呢. 其实市面上有很多编辑器都可以来编写代码,甚至是Windows自带的记事本都可以编写代码.俗话说,工欲善其事,必先利其器,找到一个好的Python IDE,就好比剑客手中一把锋利的宝剑. Python 的学习过程少不了集成开发环境(IDE)或者代码编辑器,这些 Python 开发工具帮助开发…
前面我们把Python环境安装成功,同时也选择了自己合适的IDE工具来开启自己的编程之旅. 那么今天来说说怎么编程,程序设计需要什么步骤,我们应该怎么做才能编写自己的程序. 1-1.程序设计方法: IPO模式: I:input--输入,程序的输入(文件输入.网络输入.用户手工输入.随机数据输入.程序内部参数输入等) P:process--处理,程序的主要逻辑(程序对输入进行处理输出产生结果:处理的方法也叫算法) O:output--输出,程序的输出(屏幕显示输出.文件输出.网络输出.操作系统内部…
无论你程序是做什么的,它经常都需要处理大量的数据.这些数据大部分表现形式为strings(字符串).然而,当你对字符串大批量的拷贝,切片和修改操作时是相当低效的.为什么? 让我们假设一个读取二进制数据的大文件示例,然后将部分数据拷贝到另外一个文件.要展示该程序所使用的内存,我们使用memory_profiler,一个强大的Python包,让我们可以一行一行观察程序所使用的内存. @profile def read_random(): with open("/dev/urandom",…
原题 | Left-recursive PEG grammars 作者 | Guido van Rossum(Python之父) 译者 | 豌豆花下猫("Python猫"公众号作者) 声明 | 本翻译是出于交流学习的目的,基于 CC BY-NC-SA 4.0 授权协议.为便于阅读,内容略有改动. 我曾几次提及左递归是一块绊脚石,是时候去解决它了.基本的问题在于:使用递归下降解析器时,左递归会因堆栈溢出而导致程序终止. [这是我的 PEG 系列的第 5 部分.其它文章参见这个目录] 假设…
注:为了方便阅读与收藏,我们也制作了30本书籍完整清单的Markdown.PDF版以及思维导图版,大家可以在实验楼公众号后台回复关键字"书籍推荐"获取. Python 系列(10本) 如果你之前一点编程经验都没有,先看如下两本: 34.<简明 Python 教程>(A Byte of Python) 现在有 Python 3 的版本(Introduction ยท A Byte of Python)了 .最简洁易懂的 Python 书了.本书采用知识共享协议免费分发,意味着…
这里的内容仅仅是本人阅读<Python高性能编程>后总结的一些知识,用于自己更好的了解Python机制.本人现在并不从事计算密集型工作:人工智能.数据分析等.仅仅只是出于好奇而去阅读这本书.很多人因为Python不能同时使用多颗CPU(全局解释器锁GIL),而觉得它不能实现高性能.书中有很多介绍避开GIL或者Python虚拟机的方式,例如Cython,PyPy等. 首先我们要说一下时间复杂度,可以帮助我们理解CPython编译器怎么干活: 时间复杂度 在描述算法复杂度时,经常用到o(1), o…
李宁老师的 开始学习.   本系列文章深入介绍了Python的各种技术,堪称是目前最全的Python教程.主要目的是让读者可以了解Python的各种核心技术,包括各种Python函数库.本教程使用Python 3.8讲解,读者也并不需要纠结Python版本.如果读者当前正在使用更低的Python版本,如Python3.6或Python 3.7,并不需要更换Python版本.只要使用Python3.5以上的版本,就完全可以运行本教程的代码. 如果读者使用的是Anaconda中的Python环境,是…