
###質問
num = 12345
のような数値を
l = [1,2,3,4,5]
という形に変換したいのですがうまく行きません
###試したこと
list()を使ってみましたがダメとのことでした
分かる方回答よろしくお願いします
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。

回答4件
0
ベストアンサー
こんな漢字で、
Python
1>>> num = 12345 2>>> l = [int(i) for i in str(num)] 3>>> l 4[1, 2, 3, 4, 5]
投稿2018/11/11 11:12
総合スコア5739
0
一旦文字列に変換し、一文字ずつintに変換するのが最も簡単だと思います。
python
1l = [int(x) for x in str(num)]
割り算して剰余をリストに追加して・・・とやっていくこともできます。
python
1i = num 2l = [] 3while i > 0: 4 l.append(i%10) 5 i //= 10 6l.reverse()
投稿2018/11/11 11:10
総合スコア30939
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
文字列を経由する方法
Python
1>>> dst = [] 2>>> for ch in str(num): 3... dst.append(int(ch)) 4... 5>>> dst 6[1, 2, 3, 4, 5]
Python
1>>> dst = [int(d) for d in str(num)] 2>>> dst 3[1, 2, 3, 4, 5]
10で割っていく方法
Python
1>>> dst = [] 2>>> while num != 0: 3... dst.append(num % 10) 4... num //= 10 5... 6>>> dst 7[5, 4, 3, 2, 1] 8>>> 9>>> dst.reverse() 10>>> dst 11[1, 2, 3, 4, 5]
投稿2018/11/11 11:08
編集2018/11/11 11:09総合スコア35678
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。

みなさん回答ありがとうございます。
目的としてはリストをファイルとして保存してそれをもうもう一度読み込んでmatplotlibを使ってグラフにしたいと考えています。
みなさんが教えてくださった方法でもなんとか実現はできそうなのですが、もし他の良い方法があったら教えてください。
> リストをファイルとして保存
jsonかpickleを使うと良いと思います。
> それをもうもう一度読み込んで
もう一度読み込む必要は無いのでは?
> matplotlibを使ってグラフにしたい
matplotlibについては知見がありません。悪しからず。

退会済みユーザー
2018/11/11 11:38
ありがとうございます。
毎日データをリストとしてとってそれを保存して任意のデータを取り出してグラフに出したいと考えていました。
なるほど。
それならば、データを取ってくるスクリプトとグラフを生成するスクリプトを分ける必要がありますね。
やはりjsonかpickleですかね。
人間に読める形式で保存したいなら前者を、効率を重視するなら後者を使ってください。
『Python ○○』で調べれば充分情報は出てくると思います。

退会済みユーザー
2018/11/11 11:49
わかりました。ありがとうございます!

あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/11/11 11:23