如何从列表/tk网格中获取值

问题描述 投票:0回答:1

我使用

tkinter
网格进行用户输入,有 5 列和 10 行。

如何将所有数据保存在

pandas dataframe
中并导出到
excel


import pandas as pd
from tkinter import *

root=Tk()
entries = []

for i in range(10):
    en = Entry(root)
    en.grid(row=i+1, column=0)
    en1 = Entry(root)
    en1.grid(row=i+1, column=1)
    entries.append([en,en1])

def hallo():
    for entry in entries:
            rowLen = len(entries)
            colLen = len(entries[0])
            for c in range(colLen):
                for r in range(rowLen):
                    print( entries[r][c])

def hallo1():
        print(data)
        
def hallo12():
    df = pd.DataFrame(data)
    print(df)

button=Button(root,text="krijg",command=hallo).grid(row=12,column=0)
button1=Button(root,text="kxcvxrijg",command=hallo1).grid(row=13,column=0)
button3=Button(root,text="kxcvxrijg",command=hallo12).grid(row=14,column=0)

data = []

root.mainloop()

这在我的代码之上没有错误,但结果在下面我们需要保存到 df 并导出到 excel 的单元格值 [运行] python -u "d:\MFA\pythonfile tta.py" 。!入口 .!entry3 .!entry5 .!条目7

请指导我并发送正确的代码。

python pandas dataframe tkinter grid
1个回答
0
投票
for i in range(10):
    en = Entry(root)
    en.grid(row=i, column=0)
    entries.append(en)
    
    en1 = Entry(root)
    en1.grid(row=i, column=1)
    entries.append(en1)

def hallo():
    for entry in entries:
        data.append(entry.get())

替换第 7->20 行(用上面的代码),我假设您有 Excel 导出代码,所以这就是您所需要的。希望有帮助

© www.soinside.com 2019 - 2024. All rights reserved.