我需要能够区分查询参数中包含空字符串和不包含该参数。以下代码:
form = cgi.FieldStorage()
foo = form.getfirst('foo')
http://example.com?foo和http://example.com都导致foo为None。我想在第一种情况下foo是一个空字符串,并且只在第二个缓存中没有。我该怎么做才能区分两个缓存。
p.s。 http://example.com?foo=bar导致foo被按预期禁止。
答案 0 :(得分:1)
您可以使用foo
运算符来测试表单中是否存在in
键:
foo = form.getfirst('foo', '') if 'foo' in form else None
答案 1 :(得分:0)
也许这就是您要搜索的other question。
将keep_blank_value = 1传递给FieldStorage构造函数可以达到目的。