【问题标题】:Scanning and Printing Bengali Word in Python based GUI.在基于 Python 的 GUI 中扫描和打印孟加拉语单词。
【发布时间】:2017-09-28 17:57:12
【问题描述】:

我用 Python 设计了一个接口,我想将其用作与自然语言处理相关的项目。但是当我尝试在输入字段中写任何孟加拉语单词时,它会显示问号“????”,我该如何解决?

接口代码如下:

from tkinter import *

def show_entry_fields():

#This Line is Printing The Scanned String
   print("First Sentence: %s\nSecond Sentence: %s\nThird Sentence: %s" % (e1.get(), e2.get(),e3.get()))


#Below This Line Is Interface Coding I think
   e1.delete(0,END)
   e2.delete(0,END)
   e3.delete(0,END)

master = Tk()
Label(master, text="First Sentence").grid(row=0)
Label(master, text="Second Sentence ").grid(row=1)
Label(master, text="Third Sentence").grid(row=2)

e1 = Entry(master)
e2 = Entry(master)
e3 = Entry(master)


e1.insert(20,"")
e2.insert(20,"")
e3.insert(20,"")


e1.grid(row=0, column=1, columnspan=2)
e2.grid(row=1, column=1, columnspan=2)
e3.grid(row=2, column=1, columnspan=2)


Button(master, text='Quit', command=master.quit).grid(row=5, column=0, sticky=W, pady=4)
Button(master, text='Show Similar Word', command=show_entry_fields).grid(row=5, column=1, sticky=W, pady=4)

mainloop( )

截图:Image 1Image 2

在图 1 中,英语工作正常,但是当我开始在图 2 中使用孟加拉语时,它会打印“????”问号。接口和外壳都打印相同的“??????”问号。我研究了一下,我认为解决方案在于“utf-8”编码,但我无法在这个接口中实现它。

【问题讨论】:

  • 您使用的字体是否支持您要显示的字形? Tkinter 非常支持机器人 unicode。
  • 这是孟加拉语字体,我试图打印正常的孟加拉语字母。但是在 tkinter GUI 中,除了“???????”之外什么都没有显示。我试过这个解决方案:stackoverflow.com/questions/30169541/… 但什么也没发生。
  • 我在代码中没有看到您将字体设置为孟加拉语字体的任何地方。

标签: python-3.x python-unicode


【解决方案1】:

我使用支持 utf-8 编码的不同 Python 库解决了此问题。

这是 PyQt。以前我使用 tkinter 并且它显示 ???因为 tkinter 库中不支持 utf-8。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-04-17
    • 2021-11-15
    • 2013-01-09
    • 2013-05-02
    • 1970-01-01
    • 2016-09-07
    • 2021-12-25
    相关资源
    最近更新 更多