Python
 Computer >> コンピューター >  >> プログラミング >> Python

Pythonでユーザー入力からリストを取得する方法を徹底解説

この記事では、ユーザーにリストの要素を入力してもらい、その入力値をもとにリストを作成する方法を解説します。初心者の方でも理解しやすいよう、複数のアプローチを具体的なコード例とともに紹介します。

方法1: format関数とinput関数を組み合わせる

format関数を使えば、プロンプト内のプレースホルダーに値を埋め込むことができます。input関数でユーザーが入力した値を受け取り、appendメソッドでリストに1つずつ要素を追加していきます。

コード例

listA = []
# 要素数を入力
n = int(input("リストの要素数を入力してください : "))
# 入力された回数だけ繰り返す
for i in range(0, n):
    print("{}番目の要素を入力してください: ".format(i+1))
    elm = int(input())
    listA.append(elm)  # 要素をリストに追加
print("入力されたリストは以下の通りです: \n", listA)

実行結果

リストの要素数を入力してください : 4
1番目の要素を入力してください:
7
2番目の要素を入力してください:
45
3番目の要素を入力してください:
1
4番目の要素を入力してください:
74
入力されたリストは以下の通りです:
[7, 45, 1, 74]

方法2: map関数を使って一括入力する

もうひとつの方法として、ユーザーにカンマ区切りで値を連続して入力してもらうやり方があります。map関数と組み合わせることで、入力された文字列をまとめて整数に変換し、リスト化できます。この方法なら、要素ごとにEnterキーを押す必要がなく、効率的に入力できます。

コード例

listA = []
# 要素数を入力
n = int(input("リストの要素数を入力してください : "))
# カンマ区切りで要素を入力
listA = list(map(int,input("数値をカンマ区切りで入力してください : ").strip().split(',')))[:n]
print("入力されたリストは以下の通りです: \n", listA)

実行結果

リストの要素数を入力してください : 4
数値をカンマ区切りで入力してください : 12,45,65,32
入力されたリストは以下の通りです:
[12, 45, 65, 32]

方法3: リストの中にリスト(ネストしたリスト)を入力する

input関数を2回使うことで、リストの中にリストが入った構造(ネストしたリスト)も作成できます。range関数で入力する要素の数を管理し、format関数で要素を1つずつ入力させます。最後に、入力された各要素を新しく作成したリストに追加していきます。

コード例

listA = []
# 要素数を入力
n = int(input("リストの要素数を入力してください : "))
# 各サブリストには2つの要素を持たせる
for i in range(0, n):
    print("{}番目の要素を入力してください: ".format(i + 1))
    ele = [input(), int(input())]
    listA.append(ele)
print("入力されたリストは以下の通りです: \n", listA)

実行結果

リストの要素数を入力してください : 2
1番目の要素を入力してください:
'Mon'
3
2番目の要素を入力してください:
'Tue'
4
入力されたリストは以下の通りです:
[["'Mon'", 3], ["'Tue'", 4]]

まとめ

Pythonでユーザー入力からリストを作成する主な方法として、以下の3つを紹介しました。

  • format + input + append: 1つずつ対話的に要素を入力する基本的な方法
  • map + split: カンマ区切りで一度に入力でき、手軽で効率的
  • input を複数回使用: ネストしたリスト(リストのリスト)を作成できる

用途に応じて使い分けることで、柔軟なデータ入力処理を実現できます。

  1. Pythonでリスト内の指定した範囲から要素を抽出する方法

    はじめに Pythonでは、リストの中から複数の範囲(インデックス区間)に該当する要素だけをまとめて抽出したいケースがあります。例えば、大きなデータ列から特定の位置の値だけを取り出す場合などです。このような処理は、forループによる反復処理とextend()メソッドを組み合わせることで、シンプルかつ効率的に実現できます。 サンプルコード 以下は、リスト内の複数の範囲から要素を抽出する実装例です。 my_list = [14, 55, 41, 14, 17, 59, 22, 25, 14, 69, 42, 66, 99, 19] print(The list is :) print(my_

  2. Python Tkinterでチェックボックスの入力値を取得する方法

    チェックボックスウィジェットは、「オン(True)」と「オフ(False)」の2つの状態を持つ入力ウィジェットです。設定の有効・無効の切り替えや、利用規約への同意確認など、特定の値を検証したい場面で幅広く活用されています。ここでは、チェックボックスが選択されたときに、その選択状態(入力値)を取得して出力する方法を紹介します。Tkinterでチェックボックスの値を取得するには、get()メソッドを使用します。このメソッドは、チェックボックスに関連付けられた変数の現在の値を返します。サンプルコード# Tkinterライブラリをインポート from tkinter import * # tkint