<p>正如其他人所指出的<code>delete(o, 'end')</code>是您正在寻找的,但是我认为您还可以从学习如何动态生成输入字段中获益,从而节省编写这么多行代码的时间</p>
<ol>
<li><p>所有进口商品都应该排在最前面。不是在功能上。现在,每次按下按钮时都导入<code>Alignment</code>,而不是在代码开头只导入一次</p></li>
<li><p><code>global e2</code>没有做你认为是的事。就目前而言,这对你来说绝对没有任何好处。Global用于告诉函数全局名称空间中存在已定义的值,但这必须在函数中完成,才能在其外部工作</p></li>
<li><p>使用<code>import tkinter as tk</code>代替<code>from tkinter import *</code>。这将有助于防止覆盖方法</p></li>
<li><p>重写代码,在一个范围内循环以生成输入字段。这可以通过组合使用<code>list</code>或2和<code>for</code>循环来实现,并使代码更易于阅读</p></li>
<li><p>你问题的主要部分。要删除输入字段中的所有内容<code>entry.delete(o, 'end)</code></p></li>
</ol>
<p>清理代码。如果您有任何问题,请告诉我:</p>
<pre><code>import tkinter as tk
from datetime import date, datetime
from openpyxl.styles import Alignment
import openpyxl
wb = openpyxl.load_workbook('excel.xlsx')
sheet = wb["Productie"]
week_number = date.today().isocalendar()[1]
root = tk.Tk()
root.title("Main Menu")
def write_to_xlsx():
ws = wb.active
maxim = ws.max_row + 1
for i in range(8):
ws.merge_cells(start_row=maxim, start_column=i+1, end_row=maxim + 1, end_column=i+1) # A
ws.merge_cells(start_row=maxim, start_column=24, end_row=maxim + 1, end_column=24) # X
ws.merge_cells(start_row=maxim, start_column=25, end_row=maxim + 1, end_column=25) # Y
week_number = date.today().isocalendar()[1]
ws.cell(column=1, row=maxim, value=week_number)
now = datetime.now()
dt_string = now.strftime('%d/%m')
ws.cell(column=2, row=maxim, value=dt_string)
for ndex, entry in enumerate(entry_list):
ws.cell(column=ndex+3, row=maxim, value=entry_list[ndex].get())
entry_list[ndex].delete(0, 'end')
rows = range(1, maxim + 1)
columns = range(1, 8)
for row in rows:
for col in columns:
sheet.cell(row, col).alignment = Alignment(horizontal='center', vertical='center', wrap_text=True)
wb.save("excel.xlsx")
label_list = ['Model', 'Etapa', 'Batch', 'Cantitate', 'S/N']
entry_list = []
for i in range(len(label_list)):
tk.Label(root, text=label_list[i]).grid(row=i, column=0, sticky='w', padx=15)
entry_list.append(tk.Entry(root, width=20))
entry_list[-1].grid(row=i, column=1, sticky='w', padx=15)
tk.Button(root, text='Submit', command=write_to_xlsx).grid(row=1, column=2, sticky='e', padx=10)
root.mainloop()
</code></pre>