はじめに
今回はPythonのリストの出力から[]や()を消す方法を紹介します。
Pythonの導入や基本操作が行えることを前提で進めます。
↓前提知識はこちらをご覧ください↓


↑の記事の作例で作った10連ガチャで
上手くいかなかった所の掘り下げ記事になります。
カッコ問題の解説
数のようなプログラムを作成。
そして動かすと… []が出力結果につきます。


関数に処理を入れる(戻り値で結果を出す)
→ For文で実行という形にすると…
このような[]が付くようです。
その他の[]が付く条件、付かない条件などは、正直分からないです。
処理によってはつかない事があります。
原因は関数内に入れた戻り値の設定のようです。

では… ここの[]を消すとどうなるのか…?
結果は()という括弧が表示されて終わります。

これが、カッコ問題です。
こちらの対処法を紹介していきます。
対処法1:リストから1要素だけ引き抜く
戻り値の出力がリスト型の場合…
変数[0]のような1つだけ抜き取る処理を入れるとカッコが消えます。

ただし、変数[0:1]のような0~1のように2つ以上の内容を抜き出す処理はできません。
この形で書くとカッコが入ります。


そして、何故か2番目の情報が無いという扱いになります。
変数[0:2]のように書けば、2つ以上の情報を抜き出せますが…
カッコ問題は解決しません。

変数[0]+変数[1]みたいな形にすると…
エラーが出ます。

つまり、この方法はカッコを消せますが…
出力できる情報が1つだけになります。

抜き出す情報が1つだけで良いなら、リスト型をそもそも使って無いので…
正直、根本的な解決にはなって無いと思います。
以上が、対処法1:リストから1要素だけ引き抜くの解説です。
対処法2:str型で処理する
この処理は、関数内の戻り値でリストを主力してます。
たぶん、これがカッコ問題の原因です。

では、どうすれば良いかというと…
文字型の「str型」を使って処理するという解決策があります。
たとえば「str(b[0])+”,”+str(b[1])」のような処理を作成。
すると、printの出力からカッコが消えます。

もしくは、returnで設定した戻り値を「str」型にする事でも対処できます。

以上が、対処法2のstr型で処理する方法です。

あとは、もしstr型以外の処理が必要な場合は…
int()などを使って変換する形になると思います。
あとはケースバイケースになります。
問題があれば、Edgeに入っている、文字生成AIの「Copilot」に聞いたり…
処理を作らせるのが早いと思います。
まとめ
今回は、Pythonのリスト出力で発生するカッコ問題、[]や()を消す方法を紹介しました。
・カッコが入るのはリスト型を使ったのが原因
・関数内の戻り値出力をリスト型にするとカッコが付く
・1つ目の対処法は変数[0]のように1つだけデータを取り出すこと
・2つ目の対処法はリストではなく、文字型で処理する事
・文字型(str)の場合「+」などで文字を足せてまとめれる
また、他にもプログラムについて解説してます。

ぜひ、こちらもご覧ください。
コメント