问题描述
我是 Python 新手。我真的不知道我该怎么做这部分。
当我运行此代码时,它将创建一个 CSV 文件。 CSV 文件的文件名基于今天的日期。变量 x
是扫描的条码,并且将触发此代码在 csv 文件中写入条码和时间 if time_in = Now < timee
。
BARCODE,TIME IN
12345667,7:05
87654321,7:10
现在,我想创建超时代码,如果 time_in = Now > timee
以及条形码已存在于 CSV 文件中。我想把它写在 CSV 文件内它自己的条形码中的 time-in align 旁边。
例如我已经有了这个文件:
BARCODE,7:10
然后我需要扫描我的条形码 87654321
以获取超时。我的代码应该是找到我现有的条形码,然后在我的超时旁边写下我的超时。
这是我想要在 CSV 文件中得到的结果:
BARCODE,TIME-IN,TIME-OUT
12345667,7:05
87654321,7:10,16:00
如果我的条形码和时间不存在打印"You do not have time-in data"
代码:
while True:
currentCSV = open('{}.csv'.format(time.strftime("%Y%m%d-%H")),'a+')
with currentCSV as f:
print("CSV Created")
myDataList = f.readlines()
nameList = []
for line in myDataList:
entry = line.split(',')
nameList.append(entry[0])
if x not in nameList:
Now = datetime.Now()
hrs = Now.hour;
mins = Now.minute;
secs = Now.second;
zero = timedelta(seconds=secs + mins * 60 + hrs * 3600)
st = Now - zero # this take me to 0 hours.
timee = st + timedelta(seconds=12 * 3600 + 0 * 60)
dString = Now.strftime("%b-%d-%Y")
time_in = Now > timee
if time_in:
Now = datetime.Now()
time_In = Now.strftime("%H:%M")
f.writelines(f'\n{x},{dString},{time_In}')
print('abj,ab')
else:
#TIMEOUT_DATA
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)