首页 > 解决方案 > Python - 如何在一行中只写“if”?

问题描述

当我写以下内容时,它给了我一个错误,但我想这样写(一行)如何解决它。

这有效

if c:
    for y in r: img += '   '

但这并不

if c: for y in r: img += '   '

它返回语法错误

File "<string>", line 12
if c: for y in r: img += '   '
^
SyntaxError: invalid syntax

标签: pythonif-statement

解决方案


不,你不能那样做。请参阅该python 语法if语句。

if_stmt:
    | 'if' named_expression ':' block elif_stmt

这意味着if语句应该以关键字开头,if后跟一个named_expression ':'和块。

如果您查看block它定义为的规则,

block:
    | NEWLINE INDENT statements DEDENT 
    | simple_stmt

推荐阅读