gpt4 book ai didi

python - django中的负整数

转载 作者:太空宇宙 更新时间:2023-11-04 01:27:42 25 4
gpt4 key购买 nike

我正在尝试在 postgresql 数据库中进行查询。我需要在查询前将 id 乘以 -1。

def getRelation(request,id):
#id = id * -1
#osmObject = get_object_or_404(PlanetOsmPolygon,osm_id=int(id))
return HttpResponse(id)
#return HttpResponse(osmObject.way.geojson)

这是我的看法。这段代码有效,但是,如果我取消注释 multiply,我的浏览器中没有任何内容。我看不到我的负 ID。哪里错了?

如果我取消注释 get_object_404,我有一个:

invalid literal for int() with base 10: ''

这就是我尝试 int() 的原因。

这个问题看起来很简单,我也不明白为什么。我从 Django 开始。

谢谢

最佳答案

从 url 捕获的参数(这里是你的 id)作为字符串注入(inject)

你需要在开始使用它之前强制它

有点像

def getRelation(request, id):
id = int(id)
# the rest of your view

更新(回复:空白字符串)

python 允许您通过重载乘法运算符来重复字符串

>>> "foo" * 3
'foofoofoo'

当您尝试将一个字符串(包含您的 ID,但作为一个字符串)与 -1 相乘时,您会得到“-1 个副本”,它返回一个空字符串

>>> "foo" * -1
''

或者在你的情况下:

>>> "12" * -1
''
>>> int("12") * -1
-12

关于python - django中的负整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16635735/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com