将Unix时间戳转换为int时出错 - ValueError:带有基数10的int()的无效文字:''

时间:2017-03-24 01:59:49

标签: django python-3.x

我正在编写一个Django Framework应用程序,它接收Unix时间戳作为Ajax调用中的参数,并使用它们来查询数据库。我的问题是将时间戳字符串转换为Python整数,这会抛出ValueError:int()的无效文字,基数为10:''。这是片段:

start = request.GET.get('start','')
start = int(start)

我尝试打印时间戳并将输出复制到shell中以进行相同的操作,该操作已成功完成:

>>> int(1485939600)
1485939600

错误表明它正在传递一个空字符串但我可以打印它。不确定问题是什么?

2 个答案:

答案 0 :(得分:0)

如果查询参数' start'则get的第二个参数是默认值。不存在

start = request.GET.get('start','')

无法在Int。

中转换空字符串
start = request.GET.get('start',0)

如果没有启动参数,则默认为1970

答案 1 :(得分:0)

非常感谢,我发现问题出在其他地方,在页面加载时没有参数进行AJAX调用,将空字符串传递给int()。