Pythonで1からnまでの数値を(x, x*x)形式の辞書として生成するプログラム
特定の形式で指定した範囲内の数値を含む辞書を生成したい場合、ユーザーから入力を受け取り、シンプルな「for」ループを使って実装できます。この記事では、1からnまでの各数値をキーとし、その2乗を値として持つ辞書を作成するPythonプログラムを紹介します。
サンプルコード
以下は実際の動作例です。
my_num = int(input("Enter a number.. "))
my_dict = dict()
for elem in range(1, my_num+1):
my_dict[elem] = elem*elem
print("The generated elements of the dictionary are : ")
print(my_dict)
出力結果
Enter a number.. 7
The generated elements of the dictionary are :
{1: 1, 2: 4, 3: 9, 4: 16, 5: 25, 6: 36, 7: 49}
処理の流れ
- input()関数を使って、ユーザーから数値を入力として受け取ります。
- int()で文字列を整数に変換し、空の辞書を作成します。
- range(1, my_num+1)により、1から入力値までの範囲を反復処理します。
- 各数値をキーとし、その2乗(elem*elem)を値として辞書に格納します。
- 最後に、生成された辞書をコンソールに出力して表示します。
補足:辞書内包表記による簡潔な書き方
同じ処理は、Pythonの辞書内包表記を使うことで1行でより簡潔に記述することもできます。
my_num = int(input("Enter a number.. "))
my_dict = {elem: elem*elem for elem in range(1, my_num+1)}
print(my_dict)
この方法なら、コードが短くなり可読性も向上します。用途に応じて、forループ方式と辞書内包表記方式を使い分けるとよいでしょう。
-
指定した範囲内で3と5の両方で割り切れる数をすべて出力するPythonプログラム
本記事では、与えられた整数Nの範囲内から、3と5の両方で割り切れる数をすべて出力するPythonプログラムを解説します。実装方法はいくつかありますが、どの方法でも共通して必要になるのが「その数が3と5の両方で完全に割り切れるかどうか」を判定する処理です。 3と5で割り切れる数を出力する基本コード 以下が、指定した範囲内で3と5の両方で割り切れる数をすべて出力するPythonコードです。 lower = int(input(下限を入力してください:)) upper = int(input(上限を入力してください:)) for i in range(lower, upper+1):
-
Pythonのタプルと辞書(dict)の違いとは?特徴と使い分けをわかりやすく解説
Pythonにはさまざまなデータ構造が用意されていますが、その中でもよく使われるのが「タプル(tuple)」と「辞書(dict)」です。一見どちらも複数のデータをまとめて扱える点で似ていますが、実際にはまったく異なる性質を持つデータ構造です。この記事では、それぞれの特徴と違いをわかりやすく解説します。 タプル(tuple)の特徴 タプルは、複数の要素を順序付きで格納できるデータ構造です。主な特徴は以下のとおりです。 順序が保持される:要素を追加した順番がそのまま維持されます。 イミュータブル(変更不可):一度作成したタプルの要素は、後から追加・削除・変更できません。 任意の型を格納可能:数値