兰小懒 发表于 2019-12-24 09:31:06

关于跨越多行的字符问题


其中方法二和方法三能够分行吗?我怎么尝试的不能啊?

还记得如何定义一个跨越多行的字符串吗(请至少写出两种实现的方法)?

方法一:
   
>>> str1 = '''待我长发及腰,将军归来可好?
此身君子意逍遥,怎料山河萧萧。
天光乍破遇,暮雪白头老。
寒剑默听奔雷,长枪独守空壕。
醉卧沙场君莫笑,一夜吹彻画角。
江南晚来客,红绳结发梢。'''
   
方法二:
   
>>> str2 = '待卿长发及腰,我必凯旋回朝。\
昔日纵马任逍遥,俱是少年英豪。\
东都霞色好,西湖烟波渺。\
执枪血战八方,誓守山河多娇。\
应有得胜归来日,与卿共度良宵。\
盼携手终老,愿与子同袍。'
   
方法三:
   
>>> str3 = ('待卿长发及腰,我必凯旋回朝。'
'昔日纵马任逍遥,俱是少年英豪。'
'东都霞色好,西湖烟波渺。'
'执枪血战八方,誓守山河多娇。'
'应有得胜归来日,与卿共度良宵。'
'盼携手终老,愿与子同袍。')

sunrise085 发表于 2019-12-24 12:59:20

方法一是定义一个跨行字符串的一种方法。而方法二和方法三仅仅是为了编程美观而跨行编写程序,并不是定义一个跨行字符串的方法。
定义跨行字符串还可以使用转义字符‘\n’。
str2 = '待我长发及腰,将军归来可好?\n\
此身君子意逍遥,怎料山河萧萧。\n\
天光乍破遇,暮雪白头老。\n\
寒剑默听奔雷,长枪独守空壕。\n\
醉卧沙场君莫笑,一夜吹彻画角。\n\
江南晚来客,红绳结发梢。'

WilsonWolf2333 发表于 2019-12-24 15:21:56

我尝试了方法二和三,可以实现分行。例如我直接复制如下代码到IDLE里
str2 = '待卿长发及腰,我必凯旋回朝。\
昔日纵马任逍遥,俱是少年英豪。\
东都霞色好,西湖烟波渺。\
执枪血战八方,誓守山河多娇。\
应有得胜归来日,与卿共度良宵。\
盼携手终老,愿与子同袍。'
回车,再输入str2, 回车,能显示出来这些内容。方法三同理。
也尝试过先复制
str2 = '待卿长发及腰,我必凯旋回朝。\
回车后,提示我在下一行继续输入内容。

如果有疑问再回帖吧,看看你操作后具体有什么疑问。

zltzlt 发表于 2019-12-24 20:40:41

\ 只是把下一行字符串与本行连接,并不会添加换行符。楼主可以手动为每行字符串的末尾添加换行符 \n:

str2:

str2 = '待卿长发及腰,我必凯旋回朝。\n\
昔日纵马任逍遥,俱是少年英豪。\n\
东都霞色好,西湖烟波渺。\n\
执枪血战八方,誓守山河多娇。\n\
应有得胜归来日,与卿共度良宵。\n\
盼携手终老,愿与子同袍。'

在 IDLE 中用 print() 打印 str2:

>>> print(str2)
待卿长发及腰,我必凯旋回朝。
昔日纵马任逍遥,俱是少年英豪。
东都霞色好,西湖烟波渺。
执枪血战八方,誓守山河多娇。
应有得胜归来日,与卿共度良宵。
盼携手终老,愿与子同袍。

str3:

str3 = ('待卿长发及腰,我必凯旋回朝。\n'
'昔日纵马任逍遥,俱是少年英豪。\n'
'东都霞色好,西湖烟波渺。\n'
'执枪血战八方,誓守山河多娇。\n'
'应有得胜归来日,与卿共度良宵。\n'
'盼携手终老,愿与子同袍。')

在 IDLE 中用 print() 打印 str3:

>>> print(str3)
待卿长发及腰,我必凯旋回朝。
昔日纵马任逍遥,俱是少年英豪。
东都霞色好,西湖烟波渺。
执枪血战八方,誓守山河多娇。
应有得胜归来日,与卿共度良宵。
盼携手终老,愿与子同袍。
页: [1]
查看完整版本: 关于跨越多行的字符问题