REPL with multiple function definitions

Jon Ribbens jon+usenet at unequivocal.eu
Sun Jun 26 18:22:32 EDT 2022


On 2022-06-26, Rob Cliffe <rob.cliffe at btinternet.com> wrote:
> This 2-line program
>
> def f(): pass
> def g(): pass
>
> runs silently (no Exception).  But:
>
> 23:07:02 c:\>python
> Python 3.8.3 (tags/v3.8.3:6f8c832, May 13 2020, 22:20:19) [MSC v.1925 32 
> bit (Intel)] on win32
> Type "help", "copyright", "credits" or "license" for more information.
> >>> def f(): pass
> ... def g(): pass
>    File "<stdin>", line 2
>      def g(): pass
>      ^
> SyntaxError: invalid syntax
> >>>
>
> Is there a good reason for this?

For some reason, the REPL can't cope with one-line blocks like that.
If you put a blank line after each one-block line then it will work.


More information about the Python-list mailing list