写入值时如何为变量赋值需要多行(python)

sna*_*ile 1 python string variable-assignment

我有一个变量x,我想要分配一个非常长的字符串.由于字符串很长,我将其拆分为10个子字符串.我想做这样的事情:

x =
   'a very long string - part 1'+
   'a very long string - part 2'+
   'a very long string - part 3'+
                ...
   'a very long string - part 10'
Run Code Online (Sandbox Code Playgroud)

但结果证明这是一种无效的语法.那个有效的语法是什么?

gim*_*mel 5

如果你想要一个没有换行的字符串,你可以

>>> x = (
... 'a very long string - part 1' +
... 'a very long string - part 2' +
... 'a very long string - part 3' )
>>> x
'a very long string - part 1a very long string - part 2a very long string - part 3'
>>> 
Run Code Online (Sandbox Code Playgroud)

+运营商没有必要用字符串文字:

2.4.2.字符串文字串联

允许使用多个相邻的字符串文字(由空格分隔),可能使用不同的引用约定,并且它们的含义与它们的连接相同.因此,"你好"'世界'相当于"helloworld".此功能可用于减少所需的反斜杠数,在长行中方便地拆分长字符串,甚至可以为字符串的某些部分添加注释,例如:

re.compile("[A-Za-z_]"       # letter or underscore
       "[A-Za-z0-9_]*"   # letter, digit or underscore
      )
Run Code Online (Sandbox Code Playgroud)

你的情况:

>>> x = (
... 'a very long string - part 1' 
... 'a very long string - part 2' 
... 'a very long string - part 3' )
>>> x
'a very long string - part 1a very long string - part 2a very long string - part 3'
>>> 
Run Code Online (Sandbox Code Playgroud)