【发布时间】:2021-07-12 13:57:37
【问题描述】:
我是 Python 新手,我在大学学习 Cyber sec 时只做了一点点。我正在尝试为工作(个人使用)编写一个小脚本。代码不会循环,一直崩溃,谁能帮忙?
"""
Created on Fri Apr 16 10:28:50 2021
@author: lukem
"""
import datetime
from datetime import *
import sys
print("Commercial Divers Work Hours")
while True:
while True:
DT1 = input("Is it todays date?:").lower()
if DT1 == 'n' or DT1 == 'N':
DT2 = input("Enter Date?")
elif DT1 == 'Y' or DT1 == 'y':
print(datetime.now())
shrs = int(input("Start Time?:"))
fhrs = int(input("Finish time?:"))
thrs = int(input("Travel time?:"))
job = input("At what Job?:")
dp = input("Depth pay? How many meters?:")
wd = input("Welding allowance? y/n:")
if wd == 'y':
wd1 = int(input("How Many Millimeters?:"))
elif wd == 'n':
print("0")
break
if DT1 == 'Y' or DT1 == 'y':
print("Date: ",datetime.now())
print("Start Time: ",shrs)
print("Finish Time: ",fhrs)
print("Travel Time: ",thrs)
print("Job or Client: ",job)
print("Depth Allowance in meters: ",dp)
print("Welding allowance in mm: ", wd1)
elif DT1 == 'n' or DT1 == 'N':
print("Date: ",DT2)
print("Start Time: ",shrs)
print("Finish Time: ",fhrs)
print("Travel Time: ",thrs)
print("Job or Client: ",job)
print("Depth Allowance in meters: ",dp)
print("Welding allowance in mm: ", wd1)
file = open('Workhours7y.txt' , 'a')
sys.stdout = file
if DT1 == 'Y' or DT1 == 'y':
print("Date: ",datetime.now())
print("Start Time: ",shrs)
print("Finish Time: ",fhrs)
print("Travel Time: ",thrs)
print("Job or Client: ",job)
print("Depth Allowance in meters: ",dp)
print("Welding allowance in mm: ", wd1)
elif DT1 == 'n' or DT1 == 'N':
print("Date: ",DT2)
print("Start Time: ",shrs)
print("Finish Time: ",fhrs)
print("Travel Time: ",thrs)
print("Job or Client: ",job)
print("Depth Allowance in meters: ",dp)
print("Welding allowance in mm: ", wd1)
file.close()
Continue
【问题讨论】:
-
完整的错误是什么,完整的堆栈跟踪?
-
[SpyderKernelApp] 错误 |消息处理程序中的异常:ValueError:已关闭文件的 I/O 操作。
-
在 Spyder 中有大约 100 行行话,但这是第一行也是最后一行。
-
顺便说一句,您可以检查
DT1.lower() == 'n',这样您就不必写信比较 -
您正在关闭被替换的
stdout,然后尝试写入它。你为什么要sys.stdout = file?为什么不直接正常写入文件,或者使用print的file参数?
标签: python loops input while-loop