使用 python 中的 f 字符串进行日期时间比较

Datetime comparison using f strings in python

考虑以下数据框

Y = pd.DataFrame([("2021-10-11","john"),("2021-10-12","wick")],columns = ['Date','Name'])
Y['Date'] = pd.to_datetime(Y['Date'])

现在考虑以下代码片段,我在其中尝试打印在“日期”列上过滤的数据帧切片。但是,它会打印一个空数据框

for date in set(Y['Date']):
    print(Y.query(f'Date == {date.date()}'))

本质上,我想过滤“日期”列上的数据框,并在循环中对其进行一些处理。我该如何实现?

使用 "" 因为 f-strings 删除了原始的 "" 并引发了错误:

Y = pd.DataFrame([("2021-10-11","john"),("2021-10-12","wick")],columns = ['Date','Name'])

Y['Date'] = pd.to_datetime(Y['Date'])


for date in set(Y['Date']):
    print(Y.query(f'Date == "{date}"'))

需要通过以下查询命令访问日期:

Y = pd.DataFrame([("2021-10-11","john"),("2021-10-12","wick")],columns = ['Date','Name'])
for date in set(Y['Date']):
    print(Y.query('Date == @date'))