Tuple passed to function recognised as string
Scott David Daniels
Scott.Daniels at Acm.Org
Wed Mar 18 20:16:39 EDT 2009
Mike314 wrote: (paraphrased)
> >>> test_func(val=('val1'))
> <type 'str'>
> >>> test_func(val=('val1', 'val2'))
> <type 'tuple'>
> The output is quite different. Why I have string in the first case?
More natural English: "Why do I get string in the first case?"
(X) is the same as X (parentheses are for grouping), to get
a singleton, you need (X,). ((((3)))) is just a 3 with a bunch
of meaningless parens around it. So, you want:
test_func(val=('val1',))
--Scott David Daniels
Scott.Daniels at Acm.Org
More information about the Python-list
mailing list