亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Python tkinter 列表框數據類型和格式

Python tkinter 列表框數據類型和格式

狐的傳說 2021-07-29 17:36:15
我有一個簡單的 Python (3.5) 數據列表,我用它填充了一個列表框。當我從列表框中讀回選定的元素時,雖然我可以使輸出看起來像一個 Python 列表,但它的行為并不像列表,而且我無法處理列表中的元素。該列表似乎顯示為一串字符。問題很簡單,如何在列表框中保存列表(在我的情況下為整數)并將所選元素讀回作為所選元素的新可行列表。這是該問題的工作演示:import tkinter as tkfrom tkinter import *root = tk.Tk()global listboxglobal indatalistindatalist = [[0, 66, 42], [553, 68, 124], [1106, 64, 3], [3321, 78, 8], [3878, 112, 102]]listbox = tk.Listbox(root,font = 'TkFixedFont',selectmode=EXTENDED)def Set():  # Populate the listbox:    global listbox    global indatalist    print('indatalist[1][1]=',indatalist[1][1]) # Nicely prints a 2 dim list    listbox.delete(0,'end')  # Clear the listbox    # Populate the listbox    for index, inlist in enumerate(indatalist):        listbox.insert(len(indatalist),(indatalist[index][0],indatalist[index][1],indatalist[index][2]))    listbox.pack()def Get():  # Read back the listbox    global listbox    selecteddata = listbox.selection_get()##    print(selecteddata)    selecteddata = '[[' + (selecteddata.replace(' ',', ').replace('\n','], [') + ']]')    """Next option is OK, but can only select one single block"""##    startindex = min(listbox.curselection())##    endindex = max(listbox.curselection())##    selecteddata = listbox.get(startindex,endindex)    """Next looks like a list of items, but acts as a list of chars"""    print('selecteddata=',selecteddata)    print('selecteddata[1][1]=')    print(selecteddata[1][1]) # Error!. Can not read 2 dim liststepbutton = tk.Button(root, text = "Set List", command = Set)stepbutton.pack()readbutton = tk.Button(root, text = "Get List", command = Get)readbutton.pack()root.mainloop()
查看完整描述

1 回答

?
莫回無

TA貢獻1865條經驗 獲得超7個贊

selection_get不是為了取回列表框中的數據。相反,它旨在獲取X selection,根據定義,它是一個字符串。

如果要以進入列表框的相同格式從列表框中獲取數據,請使用該get方法。

下面是一個列表推導式的簡單示例:

selecteddata = [listbox.get(index) for index in listbox.curselection()]


查看完整回答
反對 回復 2021-08-03
  • 1 回答
  • 0 關注
  • 264 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號