Python コードが長いとき

Python学習【365日チャレンジ!】30日目で無事第2目標を達成できたマスターU(@Udemy11)です。

2つ目の目標だった30日継続を達成できたので、次は3ヶ月(90日)継続を新しい目標にしたいと思います。

90という数字を見ると、キリのいい100日を目標にしたくなってきますが、3ヶ月という区切りで90日にしました。

90日の次は、6ヶ月(180日)にしたいと思いますが、かなり先の目標になってしまうので、まずは目の前の目標である90日継続を目指します。

さて、今回も少し復習が入っていますが、コードを複数行にわたって記載する場合のルールを学習します。

記事の内容は、酒井潤さんの講座を参考にさせていただき、学習した内容を紹介しています。
Pythonをひととおり学習したい人にはピッタリの講座で、セールの際は、値段も専門書1冊の値段よりも安く受講できるので、超おすすめの講座です。

Python入門 酒井さんの講座

昨日の復習

昨日は、少し息抜き的な感じで、コメントの書き方を学習しました。

#リスト型変数aをタプル型変数に変換して出力
a = [1, 2, 3, 4, 5, 6, 7]
b = tuple(a)
print(b)

#を先頭に記載することで、その行はスクリプト実行時には読み込まれません。
複数行を読み込まないようにするには、読み込まない行の先頭に#を記載します。

変数宣言の右横に#を使ってコメントを書いても構わないのですが、変数宣言の上部に記載するのが暗黙のルールだそうです。

複数行にコメントを記載するときは、【”””】ダブルクオーテーション3つで囲むことで囲まれた行は、読み込まれなくなります。

読み込まないようにすることを【コメントアウト】と言いますが、プログラムをチェックする際に、怪しい動きをしてそうなコードをまとめてコメントアウトするときに活用します。

"""
a = [1, 2, 3, 4, 5, 6, 7]
b = tuple(a)
print(b)
"""

この3行は、コメントアウトされるので、Pytharmだと斜体文字で色がグレーに変わります。

Pycharm コメントアウト

それでは、本日の学習内容、複数行に渡ってのコードの書き方に進みます。

\(バックスラッシュ)を使う

コードを書いていて、1行が長くなってしまうときは、みやすさを重視して、複数行に記載するのが暗黙のルールです。

こんなときに活用するのが、下記の記事でも紹介している\(バックスラッシュ)です。

文字列でも整数型でも同じように使うことができます。

x = 'aaaaaaaaaaaaaaaaa' \
    + 'bbbbbbbbbbbbbbbbb'
y = 1 + 1 + 1 + 1 + 1 + 1 + 1 \
    + 1 + 1 + 1 + 1 + 1 + 1
print(x)
print(y)

出力結果

aaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbb
13

ちなみに、バックスラッシュを忘れてしまうとエラーになってしまいますので複数行に記載するときは注意が必要です。

Parenthesesの丸括弧を使う

複数行に記載したコードを一行と認識させるもう一つの方法が、Parehtesesの丸括弧を使う方法です。

x = ('aaaaaaaaaaaaaaaaa' 
    + 'bbbbbbbbbbbbbbbbb')
y = (1 + 1 + 1 + 1 + 1 + 1 + 1 
    + 1 + 1 + 1 + 1 + 1 + 1)
print(x)
print(y)

出力結果

aaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbb
13

出力結果はバックスラッシュを使ったものと同じになります。

コードが複数行に渡る場合は、バックスラッシュより()を使ったほうがきれいにまとまるかもしれません。
この辺は好みでどちらを使っても構わないとのことでした。

ちなみに、()とバックスラッシュを両方使うとエラーになるのかとおもって試してみると、エラーにならずに同じ結果が出力されていました。

まー、両方使う意味がないので、どちらかを使うようにしましょう。

タプル型とこんがらがる?

Parenthesesの丸括弧は、タプル型でも使いますので、どっちがどっちやらこんがらがってしまうかもしれません。

わたしも、「何が違うんだろうか?」とちょっと悩んでしまったのですが、大きな違いはそれぞれの値が,(カンマ)で区切られているかどうかです。

a = ('xxxxxxxxxxxxxx', 
    'yyyyyyyyyyyyyyyyy')
b = ('xxxxxxxxxxxxxx' 
    'yyyyyyyyyyyyyyyyy')
print(type(a))
print(type(b))

出力結果

<class 'tuple'>
<class 'str'>

ほんとちょっとした違いですが、間違えるとまったくちがったものになりますので、しっかり理解しておきましょう。

ゆっくりのんびり

ここまで30日継続してPythonを学習していますが、学習の進み具合はめちゃくちゃゆっくりしている方だと思います。

これが、リアルな短期集中のプログラミング講座ならこんなにのんびりはしてられません。

Python プログラミング講座Python プログラミング講座

なにせ、売りは短期でエンジニアとして転職できるスキルを身につけられるということなので、わたしのようなことをしていては時間が全く足りなくなってしまいます。

わたしの場合、そんなに急ぐ必要はないので、のんびり焦らずに継続していこうと思っています。

なんといっても目標は、継続してPythonを学習することですから。

ではでは、今日もGood Python!