Python 条形码扫描后,是否有任何方法将特定值从条形码存储到Excel?

Python 条形码扫描后,是否有任何方法将特定值从条形码存储到Excel?,python,excel,tkinter,Python,Excel,Tkinter,我一直在试验条形码扫描,我想把扫描后得到的条形码存储到excel中。我一直在使用Python的TkinterGUI,并将条目小部件绑定到条形码扫描仪的触发函数。但在读取条形码后,我的脚本输入条形码的每个字符,直到完成条形码。我只想要完整的条形码。 这是我的剧本: from tkinter import* import pandas as pd def submit(event): global barcode if event.char in '123456789ABCDEFG

我一直在试验条形码扫描,我想把扫描后得到的条形码存储到excel中。我一直在使用Python的TkinterGUI,并将条目小部件绑定到条形码扫描仪的触发函数。但在读取条形码后,我的脚本输入条形码的每个字符,直到完成条形码。我只想要完整的条形码。 这是我的剧本:

from tkinter import*
import pandas as pd

def submit(event):
    global barcode
    if event.char in '123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ-':
        barcode += event.char
        label1.config(text = barcode)
    mylist.append(entry1.get())
    path = 'excel.xlsx'
    df1 = pd.read_excel(path)
    SeriesA = df1['Number']
    A = pd.Series(barcode)
    SeriesA = SeriesA.append(A)
    df2 = pd.DataFrame({"Number":SeriesA})
    df2.to_excel(path, index = False)
    index = df2.index
    number_of_rows = len(index)
    entry1.delete(0, END)
    print(number_of_rows)

root = Tk()

barcode = ''
mylist = []

label1 = Label(root, text = '')
label1.grid(row = 0, column = 0, columnspan = 2)
label2 = Label(root, text = 'Number')
label2.grid(row = 1, column = 0)

entry1 = Entry(root, width = 15)
entry1.grid(row = 1, column = 1)
entry1.bind('<Key>', submit)

button1 = Button(root, text = 'Quit', width = 10, command = root.quit)
button1.grid(row = 2, column = 0)
#button2 = Button(root, text = 'Submit', width = 15, command = submit)
#button2.grid(row = 2, column = 1)

root.mainloop()
从tkinter导入*
作为pd进口熊猫
def提交(事件):
全球条码
如果“123456789abcdefghijklmnopqrstuvxyz-”中的event.char:
条形码+=event.char
label1.config(文本=条形码)
mylist.append(entry1.get())
路径='excel.xlsx'
df1=pd.read\u excel(路径)
SeriesA=df1['Number']
A=pd.系列(条形码)
SeriesA=SeriesA.append(A)
df2=pd.DataFrame({“Number”:SeriesA})
df2.to_excel(路径,索引=False)
index=df2.index
行数=len(索引)
entry1.delete(0,结束)
打印(行数)
root=Tk()
条形码=“”
mylist=[]
label1=标签(根,文本=“”)
标签1.网格(行=0,列=0,列span=2)
label2=标签(根,文本='Number')
标签2.网格(行=1,列=0)
entry1=条目(根,宽度=15)
entry1.grid(行=1,列=1)
条目1.绑定(“”,提交)
button1=按钮(根,文本='Quit',宽度=10,命令=根。Quit)
按钮1.网格(行=2,列=0)
#button2=按钮(根,文本='Submit',宽度=15,命令=Submit)
#按钮2.网格(行=2,列=1)
root.mainloop()
我想要创建条形码的示例: 1950GSR-2USB-A

excel中存储的值如下所示: 一,

十九,

195

1950年

1950G

1950GS

1950GSR

1950GSR-

1950GSR-2

1950GSR-2U

1950GSR-2US

1950GSR-2USB

1950GSR-2USB-

1950GSR-2USB-A

“1950GSR-2USB-A”最后一个是我在excel中需要的唯一数据。
我有什么办法可以解决这个问题吗?

你有没有试过把条形码保存到一个列表或其他东西中,然后在结尾处追加?是的,这是我想到的第一个解决方案。我尝试使用条件语句;如果len(str(条形码))>13,它会将其附加到列表中,然后使用它。但是,在我第二次触发条形码时,它不会重置并连接上一个条形码的下一个条形码。在将条形码写入文件后,如何将列表变为空?像
lst=[]