getfirst and re
Victor Subervi
victorsubervi at gmail.com
Fri Jan 8 14:15:51 EST 2010
On Fri, Jan 8, 2010 at 3:09 PM, Victor Subervi <victorsubervi at gmail.com>wrote:
>
>
> On Fri, Jan 8, 2010 at 2:52 PM, Jean-Michel Pichavant <
> jeanmichel at sequans.com> wrote:
>
>> Victor Subervi wrote:
>>
>> On Fri, Jan 8, 2010 at 1:26 PM, Steve Holden <steve at holdenweb.com<mailto:
>>> steve at holdenweb.com>> wrote:
>>>
>>> MRAB wrote:
>>> > Victor Subervi wrote:
>>> > [snip]
>>> >>
>>> >> Code snippet:
>>> >>
>>> >> def cgiFieldStorageToDict(fieldStorage):
>>> ^^^^^^^^^^^^
>>> Further hint ...
>>>
>>> >> params = {}
>>> >> for key in fieldStorage.keys():
>>> >> params[key] = cgi.FieldStorage[key].value
>>> > ^^^^^^^^^^^^^^^^^^^^^
>>> > This is your problem.
>>>
>>>
>>> The problem is that I don't understand this code that I exactly copied
>>> from a Web page tutorial. Can you folks point me to tutorials where I can
>>> learn to comprehend this code? Specifically, the line in question. How is it
>>> that one can code "params[key]" (what does that mean?) and the other side,
>>> what does that mean
>>>
>> I think you are gathering more fans Victor :)
>>
>> http://docs.python.org/tutorial/datastructures.html#dictionaries
>>
>
> This still isn't telling me what I need to know. Perhaps I'm missing the
> point, as in the recent case with putting the "print cookie" statement in
> the header. I am assuming (translation: making an a$$ out of you and me)
> that "params[key] automatically assigns the fieldStorage key to the newly
> created params key in the dict of the same, and assigning the value from the
> cgi.FieldStorage of that key to the params value. Is that correct?
> TIA,
> beno
>
I may have answered my own question. I have this:
def cgiFieldStorageToDict(fieldStorage):
params = {}
for key in fieldStorage.keys():
params[key] = fieldStorage[key].value
return params
dict = cgiFieldStorageToDict(cgi.FieldStorage())
print dict
which gave me this:
{'store': 'products', 'cat': 'prodCat1'}
which looks about right. I would have written the code like this:
keys = []
values = []
for key, value in fieldStorage.iteritems():
keys.append(key)
values.append(value)
params = dict(zip(keys, values))
which obviously isn't as elegant. But that's what I knew. Learned another
trick, I guess ;)
Thanks all.
beno
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-list/attachments/20100108/33f41c9e/attachment-0001.html>
More information about the Python-list
mailing list