- 公開日: 2018年06月29日
【入門者向け】Pythonの改行について徹底解説
Pythonを学習していると「文字の改行はどうするんだ?」「このコード長くね、改行できないのかな?」と疑問がわいてくることも。
そこで今回は、文字列の改行やコードの改行など「Pythonの改行」についてご紹介させて頂きます。
【Python入門】Pythonの改行について
文字列の改行について
Wordやテキストエディタでは、リターンキーを押すと改行してくれます。 Pythonで文字を表示して、思い通りに改行させようと思うと以下のような方法が使えるでしょう。
- \n
- '''
- print('1行目')
print('2行目')
print('3行目')・・・
一番ポピュラーな改行方法は、 \n
でしょう。
例えばこんなふうに記述しますね。
x = 'Pythonの文字列\n改行だよ'
print(x)
<< 結果 >>
ちょっとコードの中に \n
が入ると読みにくくなりますね。
'''
トリプルクォートは、 \n
に比べるとコードは読みやすくなります。
x = '''Pythonの文字列
改行だよ'''
print(x)
<< 結果 >>
コメントでも使えるトリプルクォート、改行にも使えるんですよ。
最後の print()
の繰り返しは文字列の改行とはチョット違いますが、一つの方法としてご紹介。
<< 結果 >>
文字列の改行、こんな場面で使われます
Pythonのプログラム内で文字列の改行が使われている例をご紹介。
- 文章のポップアップ表示に
- テキストファイルへの自動記入
- CSVファイルへのデータ自動入力
「文章のポップアップ表示」は、WebやGUIアプリに限らず至るところで使われると思います。 例えばデスクトップアプリの場合では、こんな感じ。
【上記画像のコード】gui.py
次のテキストファイルへの自動書き込みについては、同じようなテキストを複数作成する場合など。
【上記画像のコード】quiz.py
リターンキーを押す代わりに \n
で改行していることが確認できますね。
最後のCSVファイルへの自動書き込みについては、Webスクレイピングなどでデータ収集する時が想定されるでしょう。 CSVの場合は、改行というより行を追加しながら記述。
下記のスクレイピング事例を見てみましょう。 仮に改行なしでコードを実行すると、1行の中に取得データが格納されて、大変見づらいですね。
【上記画像のコード】mobaoku.py mobaoku_NoNewLine.py
Pythonコードの改行について
Pythonコードを書いていると、時々 1行の文字数が多くなることも。 できれば改行して見やすくコードを書きたい、と思うものの改行方法が分からなくてそのままにしていませんか。 実は、私もその一人でした。
Pythonの場合、コードの書き方に推奨ルールがあって、それによると 1行あたりの文字数は 72文字以下 と定められています。 72文字、結構短いです。
72文字を超えて書いてもプログラムは動くのですが、今後Pythonを扱っていく上で、推奨ルール無視できないですよね。
それでコードの改行については以下のように記述。
<< 結果 >>
【上記画像のコード】LongLine.py ShortLine.py
上図のように改行したいところでバックスラッシュを書くとコードを改行できますね。
Print()内の文章改行について
1行のprint文が長文の場合、Pythonコード内で文字を改行したい時もあるでしょう。 print()内で文字を改行する方法は以下の通りです。
<< 結果 >>
【上記画像のコード】LongText.py LongText_2.py LongText_3.py
上記以外にもこんな書き方をする例もありますね。
print('ちょっと長い文章になります。' +
'改行した方がコード全体を見やすいですよね。' +
'でも改行方法がちょっとわかりません。')
その他の改行について
リストの要素を改行して表示
リストや辞書型などのデータ型、基礎学習時は水平展開のみと思いますが、場合によっては縦方向で表示したい時も。 そんな時、以下のようにfor文を使うと各要素を改行して出力することができます。
【上記画像のコード】List.py
ドキュメントファイルの自動作成時に
PythonでWordなどのドキュメントファイル(.docxなど)を自動作成したい時の改行方法をご紹介。 改行したい行を add_paragraph() 関数で制御すると文章が改行して表示されます。
document.add_paragraph('ドキュメントファイルに改行スタイルで書き込み')
doc.add_paragraph('ドキュメントファイルに改行スタイルで書き込み')
【上記画像のコード】jmakeinvitation.py
チャットボットの開発に
SlackやOK,Google でお馴染みのチャットボット。 文字が連続して表示されていて「改行」しているように見えるかもしれませんが、恐らくこれは break 処理。 一回一回入力値を確認して文字出力されています。
参考ページ:Mathieu Rodic
\AIエンジニアに必要なスキルが身に付く/
まとめ
改行、今まではリターンキー1つで無意識の内に改行できていましたが、コンピュータに改行してもらおうと思うとチョット大変ですね。はじめの内はコードに改行指示を書くことが面倒に感じるかもしれませんが、何回かプログラムを実行していく内にだんだんおもしろくなっていくと思います。
改行以前に print文や変数がチョットよくわからないという方、CodeCampでPythonの基礎学習してみませんか?オンライン&マンツーマンのCodeCampなら、あなたの生活領域をジャマすることなくPythonスキルが身につくと思いますよ。
- この記事を書いた人
- オシママサラ