刚上手那会,到处问python用什么编译器,被网上乱七八糟的说法绕的头大,一会说自带就行,一会又要单独下软件,折腾好几天,连一段简单的打印代码都跑不顺。很多人会在这里混淆概念,python本质不是靠编译器运行,日常写代码用的都是解释器,只有需要打包成独立exe的时候,才会用到编译相关工具,这点当初没人跟我说清楚。

最早直接拿记事本敲代码,保存后缀改成py,然后在cmd里面调用python命令跑。代码短还好,稍微写长一点,少打一个冒号或者缩进错一格,要来回切换窗口核对文本,出错之后cmd只抛出一行报错,找不到在哪一行出问题,来回翻几十行文本,耗上半个钟头。那会以为记事本就是编译器,还纳闷为什么别的语言写代码界面五颜六色,它全是黑白色文字。

装完python安装包,自带IDLE。打开一看有两个窗口,一个交互式shell,输一行代码立刻执行一行,另一个文本编辑窗口用来写完整脚本。交互式窗口用来临时测试小段代码很顺手,试个循环或者简单运算不用新建文件。但写超过百行的程序就难受,没有代码补全,没法批量搜索替换,文件多起来管理起来很乱,打开多个py文件的时候来回切换窗口特别麻烦。

换过VSCode,不是专门给python做的,需要在插件市场搜python插件装上。装好之后会自动识别本机装的python解释器,代码会高亮,敲代码的时候会给出变量、函数的提示,哪里语法写错会直接在代码行下面划波浪线。写中小型脚本足够用,打开文件速度快,占用内存不算高,同时开几个别的类型的文件也不会卡顿。有个麻烦的地方,初次配置环境容易选错解释器版本,系统里装了python3.8和3.11两个版本,选不对版本,库就会导入失败,当时卡在这个地方好久。

后面试过PyCharm。社区版免费,专门针对python做的。新建项目的时候会自动创建虚拟环境,不用手动敲命令配置,项目文件树直接摆在侧边,多个py文件分类存放很直观,代码检查比VSCode更细致,变量未定义、循环逻辑有问题都会提前标记。缺点也很明显,软件启动慢,第一次打开要等一段时间加载索引,电脑配置一般的话,开着它再开浏览器,风扇就一直响。如果只是随手写几行测试代码,没必要启动它。

如果确实需要编译,把py文件打包成不用装python就能直接打开的程序,用PyInstaller。它不是日常写代码的编辑器,是编译打包工具,在终端输入命令就能把脚本打包成exe。打包出来的文件体积偏大,十几行简单代码打包后也有几十兆,别人拿到电脑直接双击运行,不用单独安装python环境。但打包后的程序启动速度慢,部分杀毒软件会误报,分发的时候要留意。

网上偶尔会看到Cython,能把python代码转成C语言再编译,用来提升运行速度。这个门槛高,不是新手写代码的选择,只适合需要提升计算性能的场景,普通写脚本、做数据分析完全碰不到。

新手别纠结编译器,先把python官方解释器装好,再挑编辑器写代码。写小片段测试,IDLE够用;兼顾轻量和扩展,VSCode;长期做完整项目,PyCharm社区版。编译打包只有要给别人发可执行文件的时候才考虑。

当初最蠢的一件事,花半天找独立的python编译器软件,以为必须单独下载一个编译程序,完全忽略官方自带的解释器,白白浪费一个下午。