在Python中执行多行

在Python中执行多行,python,Python,首次安装Python时,默认设置逐行执行用户的代码输入。但有时我需要编写同时执行多行的程序。Python中是否有一个设置,可以将代码执行一次更改为一个块?谢谢 >>> if (n/2) * 2 == n:; print 'Even'; else: print 'Odd' SyntaxError:无效语法 当我试图运行上述代码时,我在ELSE上遇到了一个无效的语法错误解决方案的一个步骤是删除if后面的分号: 您不能在同一行中使用else,因为它将

首次安装Python时,默认设置逐行执行用户的代码输入。但有时我需要编写同时执行多行的程序。Python中是否有一个设置,可以将代码执行一次更改为一个块?谢谢

>>> if (n/2) * 2 == n:;
        print 'Even';
        else: print 'Odd'
SyntaxError:无效语法


当我试图运行上述代码时,我在ELSE上遇到了一个无效的语法错误

解决方案的一个步骤是删除if后面的分号:

您不能在同一行中使用else,因为它将不明确:

if True: print 't'; if True: print 'tt; else: ... # <- which if is that else for??

中还明确指出,在else语句开始之前,您需要一个DEDENT。

解决方案的一个步骤是删除if后面的分号:

您不能在同一行中使用else,因为它将不明确:

if True: print 't'; if True: print 'tt; else: ... # <- which if is that else for??

中还明确指出,在else语句开始之前,您需要一个DEDENT。

您的缩进是错误的。试试这个:

>>> if (n/2) * 2 == n:
...     print 'Even'
... else: print 'Odd'
此外,您可能希望将其写在四行上:

>>> if (n/2) * 2 == n:
...     print 'Even'
... else:
...     print 'Odd'
甚至只有一行:

>>> print 'Even' if (n/2) * 2 == n else 'Odd'

你的缩进是错的。试试这个:

>>> if (n/2) * 2 == n:
...     print 'Even'
... else: print 'Odd'
此外,您可能希望将其写在四行上:

>>> if (n/2) * 2 == n:
...     print 'Even'
... else:
...     print 'Odd'
甚至只有一行:

>>> print 'Even' if (n/2) * 2 == n else 'Odd'

由于Python2.5,您可以

仍然要回答您的问题,您可以: 1.正确输入代码,无语法错误,即使在交互式shell中,块也将作为块执行,无论它们是否跨多行。请参见中的教程 2.在脚本中编写代码,并使用命令行或某些IDE等执行该脚本


python背后的一个想法是更喜欢多行,并以源代码的统一格式为目标,因此您尝试的不是pythonic,除非您有充分的理由,否则不应该将多个语句塞进一行。

因为Python2.5可以做到这一点

print n % 2 == 0 and 'Even' or 'Odd'
仍然要回答您的问题,您可以: 1.正确输入代码,无语法错误,即使在交互式shell中,块也将作为块执行,无论它们是否跨多行。请参见中的教程 2.在脚本中编写代码,并使用命令行或某些IDE等执行该脚本

python背后的一个想法是更喜欢多行,并以源代码的统一格式为目标,因此您尝试做的不是pythonic,除非您有充分的理由,否则不应该以将多个语句塞进一行为目标

print n % 2 == 0 and 'Even' or 'Odd'
:-


:-

看起来您正在尝试编写一个具有并发性的应用程序。有很多方法可以做到这一点,但解决方案实际上取决于问题领域。你能提供一些上下文吗?Python程序几乎从不包含分号;作为语言的一部分,在字符串之外。如果你用分号,你可能做错了什么。不要使用分号,除非您完全确定自己知道为什么需要分号。我想python中的分号只有在编写golfAh代码时才有用。。。这种一次多行的情况:-看起来您正在尝试编写一个具有并发性的应用程序。有很多方法可以做到这一点,但解决方案实际上取决于问题领域。你能提供一些上下文吗?Python程序几乎从不包含分号;作为语言的一部分,在字符串之外。如果你用分号,你可能做错了什么。不要使用分号,除非您完全确定自己知道为什么需要分号。我想python中的分号只有在编写golfAh代码时才有用。。。这种一次多行的方式:-在任何表达式后面使用分号实际上根本不合适@hyperboreean:引用文档:一个套件可以是一个或多个分号分隔的简单语句,位于标题的冒号之后,位于标题的同一行,也可以是一个或多个缩进语句,位于后续行。请参见我对python的回答>=2.5在任何表达式之后使用分号实际上都不合适@hyperboreean:引用文档:一个套件可以是一个或多个分号分隔的简单语句,位于标题的冒号之后,位于标题的同一行,也可以是一个或多个缩进语句,位于后续行。请参阅我的python回答>=2.5