答え
場合によっては『文頭に\n』の方が余計な空白を防げるから
何の話?
hoge
===piyo===
上記hogepiyoを表示する際、pythonの場合は下記の様に書く。
.py
print("hoge")
print("===piyo===")
しかしAI(全般)に書かせた際、以下のような書き方で作成していることが多々ある(気がする)
.py
print("hoge", end="")
print("\n===piyo===")
一体この冗長に見える書き方は何?![]()
よく考えると...
.py
# 何もつけない(文末に\n)
print("hoge")
# 出力:
> hoge
> #<-改行が出てしまう!!!
# 文頭に\n
print("hoge", end="")
# 出力:
> hoge
なるほど、もし最後の要素に\nがつく場合謎の空白が生まれてしまう。
賢い先人たちはこれを防ぐために『文頭に\n』で書いてきたのか...
.c
#include <stdio.h>
// hoge後に改行
printf("hoge\n");
printf("===piyo===");
// piyo前に改行
printf("hoge");
printf("\n===piyo===");
Cのように改行コードを明示する必要のある言語だと、より分かりやすい気がする。
反省
『文頭に\n』は当たり前のノウハウのようだが、検索してもそれらしきテクが書いてあるサイトは意外に出てこない![]()
コーディングをAIに全任せだと、いざという時にコードの意図を即座に説明できなくなりそう。(そもそもコードの説明は必要なのか?とかいう強者の理論はぶつけないでください。)
要件云々は置いといて、プログラミングに圧倒的な自信がある人以外は、『AIが書いたコードの隅から隅まで説明できる』状態にしておかないと、後々リスクになりそうと改めて思いなおした。