零基础入门学习Python(第2版)
上QQ阅读APP看书,第一时间看更新

3.4 长字符串

如果希望得到一个跨越多行的字符串,例如:

从明天起,做一个幸福的人

喂马,劈柴,周游世界

从明天起,关心粮食和蔬菜

我有一所房子,面朝大海,春暖花开

从明天起,和每一个亲人通信

告诉他们我的幸福

那幸福的闪电告诉我的

我将告诉每一个人

给每一条河,每一座山取一个温暖的名字

陌生人,我也为你祝福

愿你有一个灿烂的前程

愿你有情人终成眷属

愿你在尘世获得幸福

我只愿面朝大海,春暖花开

嗯,看得出这是一首非常有文采的诗,那如果要把这首诗打印出来,用我们学过的知识,就不得不使用多个换行符:

     >>> print("从明天起, 做一个幸福的人\n喂马, 劈柴, 周游世界\n从明天起, 关心粮食和
     蔬菜\n我有一所房子, 面朝大海, 春暖花开\n\n从明天起, 和每一个亲人通信\n告诉他们我
     的幸福\n那幸福的闪电告诉我的\n我将告诉每一个人\n\n给每一条河,每一座山取一个温暖
     的名字\n陌生人, 我也为你祝福\n愿你有一个灿烂的前程\n愿你有情人终成眷属\n愿你在尘
     世获得幸福\n我只愿面朝大海, 春暖花开\n")

如果行数非常多,就会给我们带来不小的困扰了……好在Python总是设身处地地为我们着想:只需要使用三重引号字符串("""内容""")就可以轻松解决问题:

最后需要提醒大家的是,编程的时候,时刻要注意Speak English!初学者最容易犯的错误(没有之一)就是误用了中文标点符号。

“眼尖”的你看出来下面代码为什么报错吗?

     >>> print(“Please speak english!”)
     SyntaxError: invalid character in identifier

是的,该代码中小括号和双引号都使用了中文标点符号,导致Python一头雾水,给出了报错信息。

切记:编程中我们使用的所有标点符号都应该是英文的!