前回までで、画像編集に関して1通りやりたいことは終わりました。
最後に、汎用性を持たせるため、画像に入れたい文字列を「input関数」で入力することに……したところで、問題発生です。
「input関数」に改行コード「\n」を入れたら、改行されずにそのまま文字入れされてしまいました。
変数では改行コードで上手く改行されたのに、これはいったい?
ほんのちょっとしたことで解決できるので、その方法をまとめました。
なぜ「input関数」で改行が反映されないの?
「input関数」で改行コード「\n」を入力すると、変数には「\\n」が格納されるからです。
どうやれば改行が反映される?
Pythonのコードで、「\\n」を「\n」に置換するのが一案です。
a = input('文字列を入力してください').replace('\\n','\n')
print(a)
まとめ
input関数で改行コード「\n」を入力すると「\\n」と扱われます。
改行を削除しようと「stripメソッド」を使っても反応しないのも、これが原因です。
無事に汎用性のあるサムネイル作成のコードが書けました。
Pythonライブラリ「Pillow」の投稿まとめ