Using something other than ';' to separate statements
Jaime Wyant
programmer.py at gmail.com
Wed Mar 30 14:40:14 EST 2005
On Wed, 30 Mar 2005 14:26:20 -0500, Peter Hansen <peter at engcorp.com> wrote:
> Jaime Wyant wrote:
> > Well, I'm embedding python in an old C console app. This app uses a
> > lot of ; delimited records.
> >
> > I want to allow the execution of arbitrary python statements inside
> > some of these records. I was hoping there was an easy way to set the
> > statement terminator. I will simply make up a new terminator and do
> > some string substitution to turn my new terminator into python's ';'.
>
> You refer to it here as a statement terminator, but in
> the first posting you called it a statement separator.
> I believe it is just a separator, not a terminator, and
> as such is not even required unless you need/want to have
> two statements on the same line.
Yeah, my thinking was that a separator implied terminator, because to
separate something has to have a beginning / ending. Sorry for the
inconsistency.
Anyway, I did want to be able to string a handful of statements
together in one "string". The python statements were one of the
semicolon delimited fields I'm working with -- which is where my
problem lied.
After goofing around with this idea, I've realized you can't be very
expressive with a bunch of python statements strung together. My
biggest problem is that I can't figure out (i don't think you can),
how to do conditionals that are strung together:
# This won't work
if a > 5: print "a > 5";else print "Doh"
I've decided to just call a function from the semicolon delimited
record, using the return value in my `C' app...
> In all the tens of thousands of lines of Python code
> I've written, I don't believe I've ever used a single
> semicolon to separate two statements.
>
> Perhaps you don't need them either...
Yeah, I tried to "make it work", but it just won't. At least not in a
satisfactory way.
Thanks!
jw
More information about the Python-list
mailing list