Python 中一行 IF 条件的语法
Syntax of one line IF condition in Python
有人能说说为什么这在 Python 中不起作用吗?它只是无效语法还是有更多内容?
arr[0] += 12 if am_or_pm == 'PM'
错误信息:
File "solution.py", line 13
arr[0] += 12 if am_or_pm == 'PM'
^
SyntaxError: invalid syntax
这个有效:
if am_or_pm == 'PM': arr[0] += 12
python 没有分号。所以在同一行中有断线。 python考虑把代码写成一行写成一行。所以这里的表达式和条件语句在同一行中是无效的。 python 解释器无法识别代码的确切含义。你可以为此使用单独的行。
arr[0] += 12
if am_or_pm == 'PM':
Python中肯定有一种用法是if
和else
子句在同一行。当您需要在特定条件下为变量赋值时使用此方法。像这样
a = 1 if b == 1 else 2
这意味着如果 b
为 1,则 a
将为 1,否则,a
将为 2。
但是 if
和 else
必须写成 all 才能形成有效的语法。
有人能说说为什么这在 Python 中不起作用吗?它只是无效语法还是有更多内容?
arr[0] += 12 if am_or_pm == 'PM'
错误信息:
File "solution.py", line 13
arr[0] += 12 if am_or_pm == 'PM'
^
SyntaxError: invalid syntax
这个有效:
if am_or_pm == 'PM': arr[0] += 12
python 没有分号。所以在同一行中有断线。 python考虑把代码写成一行写成一行。所以这里的表达式和条件语句在同一行中是无效的。 python 解释器无法识别代码的确切含义。你可以为此使用单独的行。
arr[0] += 12
if am_or_pm == 'PM':
Python中肯定有一种用法是if
和else
子句在同一行。当您需要在特定条件下为变量赋值时使用此方法。像这样
a = 1 if b == 1 else 2
这意味着如果 b
为 1,则 a
将为 1,否则,a
将为 2。
但是 if
和 else
必须写成 all 才能形成有效的语法。