i18n的实现

首先给大家分享一个巨牛巨牛的人工智能教程,是我无意中发现的。教程不仅零基础,通俗易懂,而且非常风趣幽默,还时不时有内涵段子,像看小说一样,哈哈~我正在学习中,觉得太牛了,所以分享给大家!点这里可以跳转到教程

============ i18n的实现============:作者: limodou:联系: limodou@gmail.com:日期: $Date$:版本: $Id: i18n.txt 42 2005-09-28 05:19:21Z limodou $:主页: http://wiki.woodpecker.org.cn/moin/NewEdit:BLOG: http://www.donews.net/limodou:版权: GPL.. contents::一、通常的实现方法-----------------什么是i18n,它是国际化的简称(Internationalization,去掉开始的I和最后的N,中间一共18个字符)。对于它的实现,在 Python 的文档关于 gettext 中有详细的描述。同时我在wxPyWiki上找到关于wxPyCookbook上关于国际化实现的教程,我便按文档和教程开始了我的实验。例子我使用教程上提供的,不过我进行了修改。一是增加了中文,去掉了西班牙语和法语的处理。二是将某些信息放在另一个模块中,测试跨模块的实现。同时在这个模块中将进行国际化处理的内容放在了列表中,如:: message = [_('English'), _('Chinese')]下面我描述一个通常的方法。1. 在主模块中导入gettext模块,它需要放在进行国际化处理的语句、模块导入之前。如:: gettext.install('i18ntest', './locale', unicode=True)   三个参数的意思分别为:   * 作用域名,用于限定翻译文件的主名    * 路径,存放翻译文件的路径    * unicode,是否使用unicode(如果你的应用程序是unicode的,则此处应为True)   上述的指令将安装一个缺省的国际化处理类。在我们需要安装某种特定的国际化处理类时,我们可以:: gettext.translation('i18ntest', './locale', languages=['en']).install(True)   这样将安装指定的翻译文件。前两个参数同gettext.install,第三个参数指明语言的种类。gettext.translation将   返回一个新的对象。执行它的install函数将安装支持指定语言的国际化处理功能。install中的参为是否使用unicode。2. 在所有需要进行国际化处理的字符串上加上_(),如:English和Chinese需要国际化处理,那么要转化为:_('English')   和_('Chinese')。这一步工作可能会比较麻烦。   经过上述的处理,你的程序虽然还没有真正的翻译文件但仍然是可以运行
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值