[Python-Dev] None as a keyword / class methods
bwarsaw@cnri.reston.va.us
bwarsaw@cnri.reston.va.us
Thu, 23 Mar 2000 18:02:06 -0500 (EST)
Hi Peter!
>>>>> "PF" == Peter Funk <pf@artcom-gmbh.de> writes:
PF> Since something like 'del for' or 'del import' raises a
PF> SyntaxError exception in Py152, I expect 'del None' to raise
PF> the same exception in Py3K, after None has become a keyword.
PF> Right?
I misread your example the first time through, but it still doesn't
quite parse on my second read.
-------------------- snip snip --------------------
pyvers = '2k'
try:
del import
except SyntaxError:
pyvers = '3k'
-------------------- snip snip --------------------
% python /tmp/foo.py
File "/tmp/foo.py", line 3
del import
^
SyntaxError: invalid syntax
-------------------- snip snip --------------------
See, you can't catch that SyntaxError because it doesn't happen at
run-time. Maybe you meant to wrap the try suite in an exec? Here's a
code sample that ought to work with 1.5.2 and the mythical
Py3K-with-a-None-keyword.
-------------------- snip snip --------------------
pyvers = '2k'
try:
exec "del None"
except SyntaxError:
pyvers = '3k'
except NameError:
pass
print pyvers
-------------------- snip snip --------------------
Cheers,
-Barry