pythonの改行で遊ぶ

誰得ネタ

以下のコードを用いて改行できるタイミングを考える

import numpy as np
a = 1+2+3+4
b = np.array(a)
print(a,b)

pythonは変数名や関数名を分断する形でなければ、基本的にバックスラッシュで改行が可能。

import\
numpy\
as\
np
a = 1+2\
+3+4
b = np.\
array\
(a)
print\
(a,b)

かなり自由に改行することができる。
バックスラッシュを用いて改行するときは、二行目以降のインデントを気にする必要はない。

変数名などを分断するとさすがにダメ。

# できない
b = np.arr\
ay(a)

括弧内の改行は、バックスラッシュが無くてもよい

import numpy as np
a = 1+2+3+4
# 括弧内は改行できる
b = np.array(
a
)
# 括弧内の改行はバックスラッシュ無しでよい
print(
a
,
b
)

他の言語のように、括弧内を改行で開くことができる。
この時も、改行以降のインデントは気にしなくてよい。

バックスラッシュで改行できるタイミングなら大丈夫なので、以下のような書き方もできる。

import numpy as np
# 改行前
print(np.arange(10))
# 改行後
print(
np
.
arange
(
10
)
)
# 改行前
a = [i+2 for i in range(10)]
# 改行後
a = [
i+2
for
i
in
range
(10)
]

もちろん、インデックスの括弧も同じ

a = [1,2,3,4,5]
b = a[
0
:
2
]

改行なんてしたくない、全部一行だ!って人はセミコロンを使えばよい。

import numpy as np;a = 1+2+3+4;b = np.array(a);print(a,b)

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です