首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

由于"_“的用法,Tkinter和gettext不能在Python上协同工作

由于Tkinter和gettext在Python上的不兼容性,它们无法直接协同工作。

Tkinter是Python的标准GUI库,用于创建图形用户界面。它提供了丰富的控件和布局选项,使开发者能够轻松构建用户友好的界面。然而,Tkinter本身并不支持多语言本地化,即无法直接实现国际化和本地化的功能。

gettext是Python的国际化和本地化库,用于提供多语言支持。它允许开发者将应用程序的文本翻译成不同的语言,以适应不同地区和用户的需求。gettext提供了一套API和工具,使开发者能够轻松地管理和翻译应用程序的文本。

由于Tkinter和gettext的设计差异,它们无法直接协同工作。Tkinter使用自己的字符串管理机制,而gettext使用翻译文件和域来管理字符串。因此,无法直接将Tkinter的字符串传递给gettext进行翻译,也无法直接将gettext的翻译结果应用到Tkinter的界面上。

然而,可以通过一些间接的方式来实现Tkinter和gettext的协同工作。一种常见的方法是使用gettext来翻译应用程序的非界面文本,如日志信息、错误提示等,而不是直接翻译Tkinter界面上的文本。这样可以避免Tkinter和gettext的直接冲突。

另外,也可以考虑使用其他支持国际化和本地化的GUI库,如PyQt或wxPython。这些库提供了更好的与gettext集成的支持,可以更方便地实现Tkinter界面的多语言支持。

总结起来,由于Tkinter和gettext在Python上的不兼容性,它们不能直接协同工作。可以通过间接的方式来实现部分功能,或者考虑使用其他支持国际化和本地化的GUI库来替代Tkinter。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

初学Python语言者必须理解的下划线

用在交互模式中 在Python交互模式总,如果调用_,会显示最近的表达式的值。这个功能在标准的交互模式中都有,你也可以在其它Python交互式解析器中使用。..._double_price() 单下划线结尾 为了避免与Python关键词和其他内置对象名称冲突,常常用这种命名方式,你可以不用它。...__method方式调用,因此,有人把这作为真正的私有化,但是,这里不推荐这种私有化方式,依据就是Python的命名规则。 译者注: 此处作者的观点,仅供参考。...双下划线开始和结尾 这种约定用于特殊的变量或者方法——称为“魔法方法”(译者想:“magic method”,是不是翻译成“魔幻方法”更好呢?这些特殊方法本来就让学习者感到很“魔幻”。)...# see official docs : https://docs.python.org/3/library/gettext.html import gettext gettext.bindtextdomain

71720

永远无法在游泳池里学会海战--《实战Python设计模式》新书介绍

本书利用Python 的标准GUI 工具包tkinter,通过可执行的示例对23 个设计模式逐个进行说明。...对设计模式感兴趣而且希望随学随用的读者通过本书可以快速跨越从理解到运用的门槛;希望学习Python GUI 编程的读者可以将本书中的示例作为设计和开发的参考;使用Python 语言进行图像分析、数据处理工作的读者可以直接以本书中的示例为基础...笔者结合自己二十多年的开发工作经验,将关于面向对象和设计模式的知识通过Python 语言展示给各位读者。...2.模式结构 设计模式是若干类协同完成复杂功能的方式,模式结构用来说明设计模式中每个类的职责、分工,以及类与类之间是如何协同工作的。读者通过阅读这部分内容,可以对设计模式有一个大致理解。...如果读者希望将这些代码运用到自己的工作中,那么还需要对其进行完善和改进。书中关于设计模式、Python 语言和tkinter 库的用法也有不足之处,恳请各位读者批评指正。

33930
  • Python扩展库安装与常见问题解决完整指南

    但一般不把库叫作模块,例如tkinter库包含若干模块文件,此时一般说标准库tkinter而不说tkinter模块。 在Python中,有内置模块、标准库和扩展库之分。...Python自带的pip工具是管理扩展库的主要方式,支持Python扩展库的安装、升级和卸载等操作。...这样的问题基本上可以肯定是安装路径和使用路径不一致造成的。 注意,如果计算机上安装了多个版本的Python开发环境,在一个版本下安装的扩展库无法在另一个版本中使用。...不管是多牛的程序员,写出来的代码都有可能会存在bug,这是正常的,Python也不例外。某些扩展库在升级过程中解决原来问题的同时又引入了新的错误,导致某些功能在旧版本中工作正常但在新版本中却无法使用。...这是因为新版本扩展库不再支持原来的用法,这时需要查一下这个扩展库官方网站的更新历史,找到最新的用法然后修改自己的代码。

    3.4K10

    永远无法在游泳池里学会海战--《实战Python设计模式》新书介绍

    本书利用Python 的标准GUI 工具包tkinter,通过可执行的示例对23 个设计模式逐个进行说明。...对设计模式感兴趣而且希望随学随用的读者通过本书可以快速跨越从理解到运用的门槛;希望学习Python GUI 编程的读者可以将本书中的示例作为设计和开发的参考;使用Python 语言进行图像分析、数据处理工作的读者可以直接以本书中的示例为基础...笔者结合自己二十多年的开发工作经验,将关于面向对象和设计模式的知识通过Python 语言展示给各位读者。...2.模式结构 设计模式是若干类协同完成复杂功能的方式,模式结构用来说明设计模式中每个类的职责、分工,以及类与类之间是如何协同工作的。读者通过阅读这部分内容,可以对设计模式有一个大致理解。...如果读者希望将这些代码运用到自己的工作中,那么还需要对其进行完善和改进。书中关于设计模式、Python 语言和tkinter 库的用法也有不足之处,恳请各位读者批评指正。

    65300

    设计一个界面,很简单!

    , Glade等,在这些库中,小编只会Tkinter、wxPython和PyQt三种库,由于内置库Tkinter最为简单实用,所以就先从它开始吧,其他库以后慢慢介绍吧!...Tkinter,它是Tk(Tcl/Tk的GUI工具包)的Python接口。 Tcl/Tk是嵌入式应用,测试,原型开发和GUI开发领域的流行脚本语言。...如果你查看源码,那么你会发现Tkinter只是一个使用Tcl/Tk库的C扩展的包装器(Python2和3在导入模块有大小写区分,注意一下哟)。...Tkinter适用于各种领域,从小型桌面应用程序到科学建模和各个学科的研究工作。 学习Python的人需要从事GUI编程时,Tkinter似乎是完成工作的最简单,最快捷的方式。...,下次再给大家分享各个小部件的具体用法、Tkinter布局管理器的使用等知识。

    2.6K100

    Python 学习之 Tkinter「下」

    文章接前一篇文章:Python 学习之 Tkinter「上 」 文章来源还是来自于我的知识星球球友.Python绿色通道 GUI教程就这么多了,完全满足我们日常做小工具的需求了,如果要继续深入可以自己研究...2.SINGLE:和 BROWSE 的区别是你只能选择一行,不能拖动。...# 将列表元素当做一个整体添加,不常用 lb.insert(tkinter.END, ["bird", "duck"]) # 删除元素:参数 1 为开始的引用,参数 2 为结束的索引,如果不指出参数...2 ,只删除第一个索引处的内容 lb.delete(1, 2) lb.delete(1) # 选中 用法同删除 lb.select_set(0, 1) # 取消选中,用法同删除 lb.select_clear...Python 学习之 Tkinter「上 」 用Python获取公众号评论并生成词云图证明抖音无罪 Python抓取公众号文章并生成pdf文件保存到本地 用Python抓取某大V的公众号文章 抓取得到

    2.2K20

    理解Python中的下划线(_)的五种用法

    在Python中有5种使用下划线的情况: 用于在解释器中存储最后一个表达式的值。 忽略特定的值。 给变量名或函数名赋予特殊的意义和功能。 用作“国际化(i18n)”或“本地化(l10n)”。...PEP8是Python的约定准则,它介绍了以下4种命名情况: _single_leading_underscore (首部单下划线) 此约定用于声明模块中的私有变量、函数、方法和类。...有时,有些人使用它就像真正的私人使用这些功能,但它不是私人的,也不推荐这样做。...用于i18n/l10n的内置库gettext使用了这种约定,Python web框架Django支持i18n/l10n也引入并使用了这种约定。...# see official docs : https://docs.python.org/3/library/gettext.html import gettext gettext.bindtextdomain

    2.3K10

    自学鸿蒙应用开发(46)- 处理应用前后台切换

    需要长时间运行的应用不会永远保持在前台运行,用户很可能在计时的同时需要微信聊天,或者刷视频。对于秒表应用来讲就是被切换到后台。这时我们希望: 无论秒表应用处于前台还是后台,计时动作都可以继续执行。...以下是演示视频: 处理前后台切换通知 通过重载MainAbilitySlice类的onForeground和onBackground方法可以接受应用的前、后台切换通知: @Override public...设计模式》是作者去年3月份出版的技术书籍,该书利用Python 的标准GUI 工具包tkinter,通过可执行的示例对23 个设计模式逐个进行说明。...这样一方面可以使读者了解真实的软件开发工作中每个设计模式的运用场景和想要解决的问题;另一方面通过对这些问题的解决过程进行说明,让读者明白在编写代码时如何判断使用设计模式的利弊,并合理运用设计模式。...对设计模式感兴趣而且希望随学随用的读者通过本书可以快速跨越从理解到运用的门槛;希望学习Python GUI 编程的读者可以将本书中的示例作为设计和开发的参考;使用Python 语言进行图像分析、数据处理工作的读者可以直接以本书中的示例为基础

    65720

    自学鸿蒙应用开发(21)- 分组处理按钮操作

    Component.ClickedListener() { public void onClick(Component v) { clearQuestion(); } }); 最后就是向表达式中增加内容,退格和清除三个方法的具体实现...,读者也可以参照下面的《实战Python设计模式》一书,书中有本文正在介绍的计算器的设计思路,只是具体实现时使用了Python语言。...新书介绍 《实战Python设计模式》是作者最近出版的新书,拜托多多关注! ? 本书利用Python 的标准GUI 工具包tkinter,通过可执行的示例对23 个设计模式逐个进行说明。...这样一方面可以使读者了解真实的软件开发工作中每个设计模式的运用场景和想要解决的问题;另一方面通过对这些问题的解决过程进行说明,让读者明白在编写代码时如何判断使用设计模式的利弊,并合理运用设计模式。...对设计模式感兴趣而且希望随学随用的读者通过本书可以快速跨越从理解到运用的门槛;希望学习Python GUI 编程的读者可以将本书中的示例作为设计和开发的参考;使用Python 语言进行图像分析、数据处理工作的读者可以直接以本书中的示例为基础

    55910

    【tkinter系列 第十一课 Menu窗口部件 】

    前言 python中通常我们写程序,显示结果和操作都是在终端区,如果要想实现一个有显示界面的程序那该怎样实现呢?...python中有好几个库都可以实现,这个系列我们一起来学习如何使用python自带的tkinter库来实现。...本节课将要学习Menu窗口部件,Menu是菜单栏的意思,菜单栏可以用来实现下拉和弹出式菜单,点击菜单后弹出的一个选项列表,用户可以从中选择。...什么时候用:在设计比较复杂的软件时,为了使得用户体验更好,不能在一个界面上将所有操作都显示出来,通过菜单栏配合TopLevel,用户可以根据自己的需要自由选择。...拓展 通过和TopLevel以及tkinter.filedialog可以实现打开新的窗口和打开文件等选项,更多用法可以查看官方文档,这里只是一个简单的案例启发,以后的实际项目案例中会使用到。

    1.7K20

    Python的GUI编程和tkinter,Wxpython

    Python的GUI编程和tkinter,Wxpython PythonGUI这个内容是我在课程论文准备之初临时去学的一些内容,起初我准备学下tkinter做我课程论文项目的前段显示,但是由于临时的一些变动...[TOC] PythonGUI介绍: Tkinter: Tkinter 模块(Tk 接口)是 Python 的标准 Tk GUI 工具包的接口 .Tk 和 Tkinter 可以在大多数的 Unix 平台下使用...Python Tkinter 通用控件属性: Python Tkinter 按钮组件 (Button) 按钮组件用于在 Python 应用程序中添加按钮,按钮上可以放上文本或图像,按钮可用于监听用户行为...复选框:(Checkbutton) 是为了返回多个选项值的交互控件,通常不直接触发函数的执行。...w.pack() root.mainloop() 标签(Label)和 消息(Message):除了单行与多行的不同外,属性和用法基本一致,用于呈现文本信息。

    28210

    python笔记:可视化界面写作尝试

    因此,这里我们先尝试基于莫烦python中的可视化界面写作教程来熟悉一下python中的可视化界面写作库tkinter。...,也就是说,坐标点相互之间只有相对关系,而不代表绝对关系; padx, pady事实上是部分全局的,同一横坐标的pady和同一纵坐标下的padx是相同的,而两行(列)之间的距离事实上是相邻两行的pady...变量 tkinter中的所有变量事实上都是tk.Variable类的一个子类,和C语言中的参数定义没啥区别,就是实现申明一个变量,然后进行赋值和获取。...可以看到,除了一些坑之外,他们的用法事实上都是非常简单的,无奈官网的文档实在比较坑爹,各类教程又不太提及这个库,基本也就是莫烦那一套东西被搬来搬去,也不知道是谁抄谁的,有用法样例,但是细节内容也没有太过展开...参考链接 Tkinter 做简单的窗口视窗 (GUI 莫烦 Python 教程) https://www.runoob.com/python/python-gui-tkinter.html https:

    4.6K30

    扣丁学堂Python在线视频带你了解并读懂多进程和数据传递

    在现如今,随着互联网科技飞速的发展和进步,当大多数程序员在写代码时会涉及到很多逻辑和线程,比如Python基础教程语言,首先Python不仅线程用的是系统原生线程,进程也是用的原生进程,进程的用法和线程大同小异...:可以实现多核的运用python本身会启动一个主进程,并且拥有一个主线程把主进程看做一家之主,那主线程也是他本身,其他线程就相当于老婆们而进程,长大了的儿子们,线程固然是不能分割的,一家人还是要团结,但是儿子自家的事务...数据传递多线程,多进程中总有要协同的工作,都涉及数据的交互,不过交互方式有些不同信息进行传递的时候,为了不阻塞执行一般会将数据放入对列当中而不是直接返回线程中,由于都属于同一个进程,定义一个全局的队列在各线程中就能够压入数据进程可能运行在不同的...CPU上,因此,相互间的传递不能在全局定义,只能通过创建时进行传入内部操作:传入的队列实际上并不是将引用传入,然后直接操作队列,这毕竟是不同的CPU上的工作队列的传入实际上是队列拷贝的传入,通过pickle...例如: import multiprocessing multiprocessing.Queue() 线程和进程都有不同的队列对象,以实现不同的数据交互,不能错位使用。

    56370

    Python tkinter快速可视化开发GUI界面指南:详细教程(附带工具)

    因为TKinter为Python标准库,使用TKinter完成的Python程序可以称为 “绿色软件”,不需要目标机器上安装wxPython,PyQt4等框架,只要有Python 的机器就能运行。...tkinter 打包成exe可执行文件 ttkbootstrap美化后打包 部分控件的使用说明(重要) Label,标签条在VB和Python中基本一样。...ComboBox 组合框在Tkinter中没有对应的控件,比较类似的只有OptionMenu,类似ComboBox 的Style=2 (Dropdown List)时的表现,一个下拉列表,只能在列表中选择一个值...打开VB6,新建一个标准EXE工程,在窗体上设计自己的GUI布局,这个工作估计没有VB基础的同学都可以完成,同时可以设置相应的控件属性。...如果使用自带安装程序安装了插件,现在VB的工具条上应该有一个新图标(一片橙红色羽毛),如果没有,到菜单"外接程序"|“外接程序管理器” 里面启动Visual Tkinter,Visual Tkinter

    10.1K51

    自学HarmonyOS应用开发(48)- Tablist组件进阶

    在应用开发中经常会用到Tablist组件,连载中也介绍了该组件的基本用法: 自学鸿蒙应用开发(17)- TabList和Tab 但是有一个问题是这篇文章,包括HarmonyOS应用开发的官方文档都只是实现了...定义状态基类 对于包含Tablist的AbilitySlice来讲,需要根据Tablist的选择结果切换画面组件和相应的动作处理,我们为此定义了一个SliceState基类。...设计模式》是作者去年3月份出版的技术书籍,该书利用Python 的标准GUI 工具包tkinter,通过可执行的示例对23 个设计模式逐个进行说明。...这样一方面可以使读者了解真实的软件开发工作中每个设计模式的运用场景和想要解决的问题;另一方面通过对这些问题的解决过程进行说明,让读者明白在编写代码时如何判断使用设计模式的利弊,并合理运用设计模式。...对设计模式感兴趣而且希望随学随用的读者通过本书可以快速跨越从理解到运用的门槛;希望学习Python GUI 编程的读者可以将本书中的示例作为设计和开发的参考;使用Python 语言进行图像分析、数据处理工作的读者可以直接以本书中的示例为基础

    40410

    Python: 屏幕取色器(识别屏幕上不同位置的颜色)

    文章背景:工作中,有时候需要判断图片中不同位置的颜色。有些颜色不太容易区分,所以想通过Python编写代码,通过屏幕取点,获取某个位置的颜色值。...代码逻辑: (1)文末参考资料[2]的csv文件(记为颜色表)中给出了865种颜色的英文名称和对应的RGB数值,在此基础上,笔者添加了相应的中文名称,如下表所示。...(2)通过鼠标在屏幕上取点,获取指定位置的RGB数值,然后与颜色表中各行的RGB数值进行匹配,返回RGB数值最接近的颜色信息。...import tkinter.messagebox def get_color_name(r, g, b, csv_df): # 基于给定的R,G,B和颜色表,匹配与所取点RGB数值最接近的颜色...的颜色识别器(https://zhuanlan.zhihu.com/p/342372391) [4] Python PIL ImageGrab.grab()用法及代码示例(https://vimsky.com

    5.1K30

    十个顶级Python 图形界面(GUI)框架供你选择

    你知道嘛 由于Python越来越受欢迎,并得到广泛采用,它将成为2020年流行起来的编程语言。在牢固掌握Python编程基础之后,初学者面临的下一个挑战是构建用户界面。...这些视觉元素的输入可以来自通常的媒介,如键盘、鼠标和触摸屏。 最佳GUI Python框架 专注于完善用户界面是一件好事,但同样重要的是提供最好的用户体验,在不投入过多资源的情况下交付它也同样重要。...Tkinter Tkinter通常被大多数Python开发人员称为首选GUI工具包,创建Tkinter是为了给现代开发人员提供Tk GUI工具包的标准接口和它的Python绑定。...Kivy GUI框架在现实世界中最常见的用法可以在我们的Android和iOS应用程序中看到。该框架的其他广泛实现可以在Linux、Windows、树莓派和Mac OS设备的用户界面中看到。...由于底层平台wxWindows非常高效,所以wax GUI框架在使用平台提供的本机小部件时,具有相同的效率和速度。 9.

    18.1K11
    领券