layout: post comments: true title: 草蟒 Python 中文 API 与 VS Code 支持尝鲜 description: date: 2020-01-14 00:00:00 -0700
祝贺新中文 API 发布到 Python 库平台 pypi。它是一个Python3 汉化版——草蟒(作者为 @buddy hello)的一部分,其中的第三方库对 Python3 英文版也适用。下面节选自 pypi 简介:
英文版 python 用户能够充分体验中文编程的 模块有<海龟 (turtle)>、<随机数 (random)>和<图快 (tkinter)>。
下面就在英文 Python 3.8.1 下对这个第三方库试用一二。
参考官网入门文档中的画五角星演示,只将官网例程的中文关键字改为了英文的:
from 海龟 import *
颜色('黄色', '红色')
开始填充()
for i in range(5):
前进(200)
右转(144)
结束填充()
完成()
使用中英 API 的代码对比如下:
代码可读性看官自断,不用多说。
视觉效果上,如在代码中进行中文命名(类/变量/方法等)的优势中所提,中文的更加齐整。
参考官网入门文档中的示例 16的英文关键字版:
import 图快
窗口 = 图快.主窗口类()
窗口.标题('图形应用程序')
窗口.尺寸('500x300+600+300')
def 登录():
登录窗口 = 图快.顶级窗口类(窗口)
登录窗口.标题('请登录...')
登录窗口.尺寸('200x200+750+350')
登录按钮 = 图快.按钮类(文本='登录', 命令=登录)
登录按钮.位置布局(相对x=0.5, 相对y=0.5)
窗口.主循环()
中英 API 代码对比:
API 的命名有些讲究。“类”后缀的思路与前文的“方法一”一致。参数命名也完成了汉化。
很值得一提的是,某些命名不拘泥于直译,而是从功能出发进行改进,比如Toplevel
的功能:
Toplevel widgets work as windows that are directly managed by the window manager. They do not necessarily have a parent widget on top of them.
既然功能就是窗口,命名为顶级窗口类
更加一目了然。类似这样将功能本质和中文特性结合的命名风格探索对于中文 API 的发展会很有助益(另参考前文末尾)。
使用微软的 Python 插件,在 Windows 下测试。可以看到中文文档:
输入中文 API 的第一个字有自动补全弹窗,包括对应说明:
这些第三方库之外,草蟒还实现了 Python 关键字和几个核心库的汉化,并开发了允许中文标点符号等等功能的 VSC 插件,有兴趣的不妨一试。
这个中文 API 是周蟒之后个人看到的,发布在英文编程语言的第三方库平台的最大规模的中文库项目。 对于內建中文文档、中文API命名、打包发布等等技术细节都进行了较全面验证。期待库的文档、测试等等早日跟上。
拭目以待!