0

假设我有以下代码:

if request.POST:
   id = request.POST.get('id')
   # block of code to use variable id
   do_work(id)
   do_other_work(id)

是否有一个快捷方式(一行代码)可以测试条件块是否为 request.POST 并为条件块分配变量 id 以使用 id 变量?

我读了这个是否有用于变量检查和赋值的 Python 快捷方式?但并没有真正回答我的问题。

4

2 回答 2

1

不,您不能在if测试表达式中分配任何内容。

如果你没有剩下的if街区,

id = request.POST and request.POST.get('id')

会工作。

但是,这样做没有多大意义,因为id = request.POST.get('id')可以很好地使用 empty request.POST

请记住,它request.POST可以为空,即使方法是POST. 这是大多数人会写的:

if request.method == 'POST':
   id = request.POST.get('id')
   # rest of block
于 2013-02-18T22:47:28.973 回答
0

我喜欢这个:

id = request.POST.get('id', False)
if id is not False:
    # do something
于 2013-02-18T23:16:32.653 回答