我的csv文件包含格式为:
的日期10/3/1946 0:00:00
4/4/1947 0:00:00
我想知道csv文件中过去的值,比如说12/18/1957 0:00:000
?
为了进行比较,我假设我需要将其转换为数字,例如,10/3/1946 0:00:00
将为17078.00
。
是否有内置方法可以做到这一点?
答案 0 :(得分:0)
我建议您将csv文件中的日期转换为datetime
格式。这是通过获取字符串并使用strptime()
将其转换为%Y
对象来完成的。该函数采用格式字符串,允许您告诉它日期字符串的格式。例如after_date
告诉它期望四位数。
首先创建一个日期时间来比较,例如from datetime import datetime
import csv
after_date = datetime(1957, 12, 18)
print "Entries after {}".format(after_date)
with open('input.csv') as f_input:
for row in csv.reader(f_input):
row_date = datetime.strptime(row[0], "%m/%d/%Y %H:%M:%S")
if row_date >= after_date:
print "{} - {}".format(row[1], row_date)
。然后可以按如下方式比较两个日期:
row[0]
这假设您尝试比较的日期位于第一列,即10/3/1946 0:00:00,row1
4/4/1947 0:00:00,row2
4/4/1957 0:00:00,row3
12/19/1957 0:00:00,row4
1/1/1958 0:00:00,row5
。例如,如果您有一个csv文件,如下所示:
Entries after 1957-12-18 00:00:00
row4 - 1957-12-19 00:00:00
row5 - 1958-01-01 00:00:00
该脚本将显示以下信息:
app.get('/settings', function(req, res) {
connection.acquire(function (err, con) {
con.query('SELECT * FROM user', function (err, rows) {
con.release();
if(err) {
console.log(err);
} else {
obj = JSON.parse(JSON.stringify(rows));
res.render('settings', {
obj:obj,
title: 'Settings',
classname: 'settings'
});
}
});
});
});