python - 如何在 CSV 文件中输入日期时修复错误“AttributeError:'datetime.date'对象没有属性'writerow'”?
问题描述
我正在编写一个程序来检查用户输入的日期是否有效,然后将它们写入 csv 文件。但是当我将它们写入文件时,我收到了这样的错误。
AttributeError: 'datetime.date' object has no attribute 'writerow'
这是我的代码的一部分:
import csv
from datetime import date
while True:
amt=int(input("\nENTER THE AMOUNT "))
if amt>monthlyincome:
print("YOU HAVE SPENT MORE THAN YOUR MONTHLY INCOME!PLEASE TRY AGAIN")
else:
break
while True:
dat=input("ENTER DATE (DD/MM/YYYY):")
d=date.today()
format="%d/%m/%y"
time1=d.strftime(format)
if dat>time1:
print("PLEASE ENTER A VALID DATE")
else:
break
data=[amt,dat]
exp.append(data)
for i in exp:
d.writerow(str(i))
我应该在这里改变什么?
解决方案
实际上d
是一个日期时间对象,writerow
是 csv 模块的方法。要写行,请尝试:
f = open('numbers2.csv', 'w')
with f:
writer = csv.writer(f)
writer.writerow(d)
推荐阅读
- sql - 修剪尾随零
- r - 如何使用用户输入的数字作为变量?
- c++ - 无法为自定义矢量类绑定 ostream 1value - C++
- javascript - 如何从 Angular 或任何其他网络平台获取 Firebase 安全数据
- java - 启动 Spring Boot Web 应用程序时出现 BeanCreationException
- c - 使用 readdir 在 for 循环中并行递归
- python - RuntimeError: stack 期望每个张量大小相等,但在条目 0 处得到 [32, 1],在条目 1 处得到 [32, 0]
- python - 如何将数字添加到列表中的所有整数(python)
- angular - 向现有工作箱工作人员注册 Firebase 服务工作人员
- batch-file - 批处理:二进制字符的按位异或不起作用