複数行の文字列

これまで、文字列はシングルまたはダブルの引用符(' または ")で宣言してきました。しかし、それでは複数行にわたる文字列を宣言することはできません。なぜなら、Pythonは行の終わりに閉じる引用符を期待するからです。複数行の文字列を宣言するには、トリプルクォートを使用することが可能です:
text = '''This long long text 
can be split
into several lines.
Like this!'''
print(text)
text = """This long long text 
can be split
into several lines.
Like this!"""
print(text)
シングルクォート ' とダブルクォート " の両方で複数行の文字列を作成できます。これらのプログラムは同じ出力を表示します:
This long long text 
can be split
into several lines.
Like this!
複数行の文字列は、長いメッセージやテキスト、ドキュメントに特に便利です。コードの説明やその動作を記述したい開発者は、短いコメントで一行の注釈を書くことができますが、コードの一部の動作を説明する際には、プログラマーが複数行の文字列を使用することが一般的です。ドキュメントの記述方法やベストプラクティスについては、このコースの後半で説明します。

チャレンジ

To be, or not to be, that is the question:
Whether 'tis nobler in the mind to suffer
The slings and arrows of outrageous fortune,
Or to take arms against a sea of troubles
And by opposing end them. To die—to sleep,
No more; and by a sleep to say we end
The heart-ache and the thousand natural shocks
That flesh is heir to: 'tis a consummation
Devoutly to be wish'd. To die, to sleep;
To sleep, perchance to dream—ay, there's the rub:
For in that sleep of death what dreams may come,
When we have shuffled off this mortal coil,
Must give us pause—there's the respect
That makes calamity of so long life.
ウィリアム・シェイクスピアの作品は非常に有名であり、同時にとても長いです。それらを同じ行で読むのはとても難しいでしょう。そこで、テキストを一つの複数行の変数に保持することを求められます。タスクは、テキストを出力し、その後に新しい行でその長さを表示することです。
 
別の質問: スペースを含めて、テキストの実際の文字数を数えることはできますか?それは何文字ですか?プログラムは異なる数を表示していますか?
答え
プログラムはテキストの文字数よりも大きな数を出力します。これは、Pythonでは各改行文字が別の文字として扱われるためです。文字数は589ですが、Pythonは各改行を1文字と数えるため、13文字多くなります。したがって、プログラムは602を出力します。
 

Constraints

Time limit: 2 seconds

Memory limit: 512 MB

Output limit: 1 MB

To check your solution you need to sign in
Sign in to continue