我确信有更简单的方法可以做到这一点,但我不确定为什么我会一直收到TypeError。
import datetime
getdate = datetime.date.today()
thirty = datetime.timedelta(days=30)
last_month = getdate - thirty
print json.dumps(api.get_zone_stats(3, "daily", "%s", "%s" %(last_month, getdate)))
追踪(最近一次通话): ...
TypeError:并非在字符串格式化期间转换所有参数
答案 0 :(得分:3)
问题在于:
api.get_zone_stats(3, "daily", "%s", "%s" %(last_month, getdate))
%
运算符仅适用于前一个字符串:
"%s" %(last_month, getdate)
一个%s
有两个变量。
试试这个:
api.get_zone_stats(3, "daily", "{0}".format(last_month), "{0}".format(getdate))
或者这个:
api.get_zone_stats(3, "daily", str(last_month), str(getdate))
答案 1 :(得分:0)
在最后一行中,您尝试使用两个值格式化字符串,但字符串只包含一个填充点:
print json.dumps(api.get_zone_stats(3, "daily", "%s", "%s" %(last_month, getdate)))
您的意思是以下吗?
print json.dumps(api.get_zone_stats(3, "daily", str(last_month), str(getdata)))