1 Star 16 Fork 11

草蟒老吴/cpython

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
汉化通用.py 2.05 KB
一键复制 编辑 原始数据 按行查看 历史
草蟒老吴 提交于 3年前 . 增加 _反向注入()
'''汉化通用函数'''
导入 正则
套路 _关键词参数中转英(中文关键词, 关键词字典, 值字典=):
'''将关键词参数 (**关键词参数/**kwags 之类) 中的汉化键/值转换回英文键/值'''
英文关键词 = {}
如果 值字典 :
, 中文关键词.项々():
英文关键词[关键词字典.获取(, )] =
否则:
, 中文关键词.项々():
如果 是实例(, 字符串型):
英文关键词[关键词字典.获取(, )] = 值字典.获取(, )
否则:
英文关键词[关键词字典.获取(, )] =
返回 英文关键词
套路 _星号参数中转英(参数, 参数字典):
'''将星号参数 (*参数/*args) 中的中文转换回英文'''
如果 参数:
参数列表 = []
元素 参数:
元素 = 参数字典.获取(元素, 元素)
参数列表.追加(元素)
参数 = 元组型(参数列表)
返回 参数
套路 _类属性翻译(**中英属性):
"""将汉化类的中文属性名翻译回原来的英文属性名.
不适用于属性值会动态改变的情况.
"""
套路 包装盒(某类):
中文属性, 英文属性 中英属性.项々():
如果 有属性(某类, 中文属性):
设属性(某类, 英文属性, 某类.__dict__[中文属性])
# 删属性(某类, 中文属性)
返回 某类
返回 包装盒
套路 _反向注入(中文类名, 英文类名):
"""将汉化类中的汉化属性(包括方法)反向注入到相应的英文类中.
这是猴子补丁汉化法的改进版, 有助于保持模块的优雅.
"""
属性列表 = dir(中文类名)
属性名 属性列表:
如果 属性名.开头是('__') 正则.搜索('[\u4e00-\u9fa5]', 属性名):
设属性(英文类名, 属性名, 取属性(中文类名, 属性名))
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Python
1
https://gitee.com/laowu2019_admin/cpython.git
git@gitee.com:laowu2019_admin/cpython.git
laowu2019_admin
cpython
cpython
zwpython3.10

搜索帮助