簡體   English   中英

如何從python中的給定日期減去n天數

[英]How to subtract n number of days from a given date in python

我已經實現數據庫如下

from google.appengine.ext import db
from google.appengine.ext import blobstore

class Medicine:
 id =  db.IntegerProperty(required=True)
 exp_date = db.DateProperty()

在實體經理中,我想獲取所有到期日的葯物-20

MedicineEntity:
 def get_medicines(self):
 query = db.GqlQuery("SELECT * FROM Medicine WHERE exp_date=:1", exp_date -20 )

我知道我的查詢是錯誤的。 有沒有辦法像Gql中的sql那樣獲得差異。 有人可以幫忙嗎?

在python中執行此操作的標准方法是使用timedelta。

例如:

from datetime import datetime, timedelta
now = datetime.now()
delta = timedelta(days=20)

then = now - delta

因此,一種選擇是將exp_date轉換為datetime,減去timedelta,然后將其轉換回dateproperty。

我沒有使用過appengine,所以我不知道這到底有多難。

編輯 :一些搜索顯示DateProperty實際上將值存儲為datetime對象,因此它應該像

query = db.GqlQuery("SELECT * FROM Medicine WHERE exp_date=:1", exp_date - timedelta(days=20) )

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM