【发布时间】:2022-01-13 21:57:23
【问题描述】:
所以我正在为一个项目开发一个 RFID 系统。我是在运行 python3 的树莓派上写的。
我有这些 RFID 标签,您可以对其进行扫描,它会记录被标记的信息。这总结了 excel 中的这些列:
"worker_name": "", “日期”: ””, “登记时间”: ””, “退房时间”: ””, "hours_worked": ""
我可以在签入时填写所有这些值,显然 check_out_time 除外,因为它应该在第二次扫描标签时填写。
所以我的问题是我不知道如何编辑该列,当扫描标签进行签出时,签出时间也记录在原始列中,而不创建新列。
我们所说的代码如下:
import pandas as pd
from datetime import datetime
from time import sleep
counter = 1
df = pd.DataFrame(
{
"worker": "",
"date": "",
"check_in_time": "",
"check_out_time": "",
"hours_worked": "",
},
index=[counter],
)
while True:
worker = input("Navn \n")
time_now = datetime.now()
date = time_now.strftime("%m/%d/%Y")
time = time_now.strftime("%H:%M")
month = time_now.strftime("%m")
new_check_in = [worker, date, time, "", "dummy_value"]
df.loc[counter] = new_check_in
df.reset_index(drop=True)
df.to_excel("output.xlsx", index=False)
counter += 1
输出如下:
worker date check_in_time check_out_time hours_worked
1 Homer Simpson 12/09/2021 02:14 dummy_value
2 Marge Simpson 12/09/2021 02:14 dummy_value
3 Bart Simpson 12/09/2021 02:14 dummy_value
4 Peter Griffin 12/09/2021 02:14 dummy_value
这是一个例子的证明,因为我还没有实现你扫描标签的部分,但概念应该保持不变。
因此,当索引 1 的工人完成他的工作日时,他会使用他的标签结账,并且存储他的信息的数据框列应该随着结账时间而更新。
谢谢大家,亲切的问候!
【问题讨论】: