質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

3回答

2607閲覧

python リスト型 変数

fumah

総合スコア72

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2016/05/02 05:46

Pythonのリスト型についてわからないことがあります。
教えてくださると幸いです。

変数 a に代入した1321など数桁の数値を、リスト型で1桁ずつ読み取れる仕組みを作りたいと思っています。具体的には、aに代入した1321をリスト型で b = [1,3,2,1]にし、c = b[0]とすると1を出力、d=b[1]とすると3を出力といったかたちです。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

内包表記で書いてみました。

python

1a=1321 2b=[int(x) for x in str(a)] 3[1, 3, 2, 1]

投稿2016/05/02 07:04

lightson

総合スコア553

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ベストアンサー

ベタにやるなら次のような感じで。

python

1a = 1321 2b = [] 3 4while a > 0: 5 b.insert(0, a % 10) 6 a = a / 10

次のように1行でもできまるでしょうか。

python

1a = 1321 2b = list(str(a))

投稿2016/05/02 06:07

ngyuki

総合スコア4514

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

3 つの方法を書いてみました。
x.py

a =1321 b = map(lambda x: int(x), list(str(a))) print(b) a = 1321 b = [] while a > 0: b = [a % 10] + b a /= 10 print(b) import math a = 1321 b = map(lambda x: a % pow(10, x) / pow(10, x - 1), range(int(math.log10(a)) + 1, 0, -1)) print(b)

実行例:

$ python x.py [1, 3, 2, 1] [1, 3, 2, 1] [1, 3, 2, 1]

投稿2016/05/02 16:26

katoy

総合スコア22324

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問