python - 如何通过 tkinter 的条目写入 csv?
问题描述
所以我有这个程序,我想从 2 写入tkinter
Entries
新创建的csv
文件pandas
。到目前为止,除了我在 . 中设置的两列之外,我没有写一行Dataframe
。有没有办法让创建的每一行都external1
Button
代表csv
文件?
该buttonmain()
函数由一个Frame
命名的line
、两个Entries
和Buttons
代码末尾显示的两个组成。
def forget_show():
external1.pack(side='right')
external.pack_forget()
def savedata():
x = e1.get()
y = e2.get()
print(x, y)
with open(filename, 'w') as csvfile:
fields=['First', 'Second']
w = csv.DictWriter(csvfile, fields)
w.writerow(x)
external = Button(line, text='Save', command=lambda: [savedata(), forget_show()])
external1 = Button(line, text='+', command=lambda: [buttonmain(), external.pack_forget()])
external.pack(side='right')
Dataframe
看起来像这样:
criteria
是空的list
entr1
并且entr2
是两个Entries
用户设置的文件名。
df = pd.DataFrame(criteria, columns=['First', 'Second'])
filename = entr1.get() + ' - ' + entr2.get() + '.csv'
df.to_csv(filename, mode='a', index=False)
解决方案
好吧,目前您的要求还不清楚,但是如果您需要结果看起来像这样
First,Second
Value1,Value2
Value3,Value4
然后在你的save_data
功能中,你可以:
with open(file name,'w') as f:#or better still open the file in 'a' mode
line = ','.join([x,y])
f.write(line)