Message164621
`ast.literal_eval` is very strict on names, so it seems to lack some "literals" that may be result of `repr` on built-in objects.
-> Obvious cases:
ast.literal_eval('...')
ast.literal_eval('Ellipsis')
both result on ValueError.
-> Not so obvious:
nan_name = repr(float('nan'))
ast.literal_eval(nan_name) # ValueError
inf_name = repr(float('inf'))
ast.literal_eval(inf_name) # ValueError
ast.literal_eval("2e308") # == inf
`nan` and `inf` are not literals (at least "inf" should be, but that's another problem), but their representations are not possible to be evaluated unlike any other float numbers with maybe precision loss.
I think `literal_eval` should include these 3 names the same way it accepts True, False and None.
Another case, that I personally don't care, but seems plausible would be `NotImplemented`. |
|
Date |
User |
Action |
Args |
2012-07-03 20:11:26 | JBernardo | set | recipients:
+ JBernardo |
2012-07-03 20:11:26 | JBernardo | set | messageid: <1341346286.65.0.729285382693.issue15245@psf.upfronthosting.co.za> |
2012-07-03 20:11:26 | JBernardo | link | issue15245 messages |
2012-07-03 20:11:25 | JBernardo | create | |
|