暮春时节,青竹覆岭,风过竹梢沙沙作响。戈戈与小沐伫立在竹林中,正激烈探讨程朱理学与王阳明心学的“格物致知”。小沐呆呆地发问,程朱“格竹求理”与阳明“格心明善”究竟不同,戈戈笑答,恰如Python多种实现,内核同源却各有侧重,随后二人便借着话题,一同梳理起Python的各类版本。
1、CPython
官网网址:https:/github.com/python/cpythonhttps:/www.python.org/
1.1 描述
它就是Python世界的“官方正统”!由Python创始人 Guido(江湖人称“龟叔”)亲自主导开发,是官方唯一认证并维护的标准实现,咱们平时学习、办公、写项目用的Python,99%都是它,相当于Python家族里的“嫡长子”,地位稳固。
简单说,CPython就是Python的“真身”,我们口中的Python 2.x/3.x,本质上都是CPython的不同版本分支,就像同一个人穿了不同款式的衣服,核心还是那个“龟叔打造”的内核。
1.2 下载
https://www.python.org/downloads/windows/
1.3 测试
给大家准备了一段“摸鱼式测试脚本”test001.py,用来看看CPython的运行速度,代码里加了点小彩蛋,colored函数让结果更醒目,一眼就能看到运行完成~
## test001.py# 摸鱼式速度测试:计算1亿次累加,看看CPython多久能搞定import timestart = time.time() # 记录开始时间number = 0for i in range(100000000): # 循环1亿次,给CPU来个小考验 number += iprint(" FINISHED!任务完成~", "green") # 绿色高亮提示,超直观print(f"Ellapsed time: {time.time() - start:.2f} s") # 保留2位小数,清晰看耗时
python
命令行执行脚本test001.py如下:
2、PyPy
官网网址:https:/pypy.org/
2.1 描述
PyPy是CPython的“加速小能手”,堪称Python界的“运动健将”!它是CPython的优质替代品,用RPython构建而成,和CPython同步发展。为啥选它?核心就是“快”!比CPython运行速度快不少,尤其适合处理大数据、循环密集型任务,实现了Python 2.7.18和3.11.11版本,核心语言全支持,常用标准库也都能轻松拿捏。
2.2 下载
https://pypy.org/download.html
2.3 测试
同样用test001.py脚本测试,看看PyPy的“加速魔法”,对比CPython,差距一眼就能看出来,谁快谁慢,跑一遍就知道!
命令行执行脚本test001.py如下:
3、Jython
官网网址: https:/www.jython.org/
3.1 描述
Jython是Python与Java的“跨界混血儿”!Jython项目打造了Java环境中的Python实现,让Python能在JVM(Java虚拟机)上“安家落户”,既能享受Python的简洁语法,又能直接调用Java编写的类和库,跨界协作超给力。不过有点小遗憾,当前版本(Jython 2.7.x)只支持Python 2,不过GitHub仓库里已经在开发Python 3版本啦,值得期待~
3.2 下载
https://www.jython.org/download
3.3 测试
用同样的test001.py脚本测试,看看Jython在Java环境下的表现,虽然只支持Python 2,但运行稳定性还是很可的~
命令行执行脚本test002.py如下:
## test002.py# 摸鱼式速度测试:计算1亿次累加,看看CPython多久能搞定import timestart = time.time() # 记录开始时间number = 0for i in range(10000): # 循环1亿次,给CPU来个小考验 number += iprint("FINISHED!任务完成~", "green") # 绿色高亮提示,超直观print("Ellapsed time: ", time.time() - start) # 保留2位小数,清晰看耗时
4、IronPython
官网网址:https:/ironpython.net/
4.1 描述
Python与.NET的“最佳拍档”!它是一款开源的Python实现,和.NET框架深度集成,相当于给Python打开了.NET的“大门”。使用IronPython,既能调用Python和.NET的各类库,其他.NET语言(比如C#)也能轻松调用Python代码,跨语言协作超顺畅,适合.NET开发者使用。
4.2 下载
https://ironpython.net/download/ (.NET开发者专属,上手无压力~)
4.3 测试
用test001.py脚本测试IronPython的运行效果,感受一下它和.NET集成后的流畅度,处理日常任务完全不在话下~
命令行执行脚本test002.py如下:
5、MicroPython
官网网址:https:/micropython.org/
5.1 描述
Python的“迷你小精灵”!它是Python 3的精简高效实现,相当于把Python“瘦身”了,只保留了标准库的一小部分,专门优化适配微控制器和受限环境(比如单片机)。还有专属的MicroPython pyboard电子板,能在裸机上运行,给电子爱好者提供了一个用Python控制各类电子设备的低成本方案,用C99编写,核心采用宽松的MIT许可,免费使用超良心。
5.2 下载
https://micropython.org/download/
6、Brython
官网网址:https:/brython.info/
6.1 描述
Brython是Python的“网页小能手”,目标是取代Javascript,成为网页浏览器的脚本语言!不用再费劲学JS,用Python就能写网页脚本,简直是Python爱好者的福音。只需在网页中引入brython.js(核心引擎)和brython_stdlib.js(标准库),就能轻松处理网页交互,实现Python与网页的无缝衔接。
6.2教程
https://brython.info/static_tutorial/en/index.html/
6.3 测试
注意啦!Brython主要用于网页环境,快来试试用Python写网页脚本的快乐~
测试test003.html如下:
<!-- test003.html --><html><head> <metacharset="utf-8"> <scripttype="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/brython/3.13.2/brython.min.js"> </script> <scripttype="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/brython/3.13.2/brython_stdlib.js"> </script></head><body><scripttype="text/python">from browser import documentdocument <= "Hello 爱阅读的小沐!"</script></body></html>
浏览器预览代码文件如下:
日头西斜,竹影渐长,戈戈与小沐梳理完Python的各类实现,相视一笑。小沐恍然,原来Python的多种版本,恰如“格物致知”的不同诠释,各有路径却殊途同归。
后续
如果你觉得这些文字有一点点用处,可以给作者点个赞;╮( ̄▽ ̄)╭如果你感觉作者写的不咋地//(ㄒoㄒ)//,评论处留言,作者继续改进。o_O???谢谢各位同学们啦( ´ ▽ ` )ノ ( ´ ▽ `` )っ!!!更多精彩文章详见:1、微信公众号:杨小羊爱阅读2、CSDN博客:爱看书的小沐