由于text
、type
、scope
是字符串,val
、altval
是int,为什么下面的代码在语法上不正确?(我知道这不是审美的正确方法,但这会影响语法吗?)
result = [(i[val:] if scope=="before" else i[:val] if scope=="after" else i[val:altval] if scope=="beforeafter" else i) if j<=until for j,i in enumerate(text.split("\n"))]
分成几行:
result = [
(i[val:] if scope=="before"
else i[:val] if scope=="after"
else i[val:altval] if scope=="beforeafter"
else i) if j<=until
for j,i in enumerate(text.split("\n"))]
按此方式拆分行时,SyntaxError
位于最后一行:
for j,i in enumerate(text.split("\n"))]
^
版本:Python 3.x
系统:Windows
我错过了什么?这是一个列表理解限制吗
只需将最后一个
if
条件移动到for
之后:Online Demo
相关问题 更多 >
编程相关推荐