[英]Inserting values from a list the tkinter text widget using commas
我創建了一個 UI,允許檢查 Word 文檔段落中使用的字體是否為 Times New Roman。 如果段落是使用任何其他字體編寫的,則字體名稱將通過 tkinter (8.6) 文本小部件顯示給用戶。 無效字體存儲在集合中。
每個無效字體在文本小部件中用逗號分隔。 但是,逗號也會出現在集合的最后一個元素之后。 這種行為是不希望的。
我想知道如何防止逗號出現在最后一個元素之后。
該代碼是在 PyCharm(社區版 2021.3.3)上使用 Python(3.10)編寫的。
代碼如下所示。 該代碼僅顯示用於檢查字體的功能,而不是整個代碼,因為它涉及按鈕並且可能太長。 歡迎任何幫助。
# function that checks font
def font_name():
if var1.get() == 1:
# access file
doc = Document(filename)
# check font for paragraphs
font = set() # store all font names
invalid_fonts = set() # store unacceptable font
VALID_FONT = 'Times New Roman' # state the valid font
for paragraphs in doc.paragraphs:
if 'Normal' == paragraphs.style.name:
for run in paragraphs.runs:
# add fonts from each run
font.add(run.font.name)
# check if fonts are valid
if run.font.name != VALID_FONT:
invalid_fonts.add(run.font.name)
# check if all elements in font are VALID_FONT
if {VALID_FONT} == font:
output_display.insert("All paragraphs are written in Times New Roman font." + '\n')
# check if all elements in font are not VALID_FONT
elif {VALID_FONT} != font:
output_display.insert('end', "Paragraph written in unrecognised font(s): ")
for invalid_fonts in invalid_fonts:
output_display.insert('end', invalid_fonts + ', ') # add invalid font(s) to text widget
您可以使用str.join()
函數:
import tkinter as tk
root = tk.Tk()
my_list = ['1', '2', '3', '3']
display = tk.Text(root)
display.insert(tk.END, ','.join(my_list))
display.pack()
root.mainloop()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.