【Python入門】文字列の先頭文字をキー、その文字で始まる単語を値とした辞書を作成する方法
Pythonでは、ユーザーが入力した文字列を単語ごとに分割し、各単語の先頭文字をキー、その文字で始まる単語を値として持つ辞書(ディクショナリ)を簡単に作成できます。
この処理には、文字列を分割する split() メソッド、データを格納するための辞書、そして条件分岐を行うシンプルな if 文を使用します。
サンプルコード
以下に具体的な実装例を示します。
my_string = input("Enter the string :")
split_string = my_string.split()
my_dict = {}
for elem in split_string:
if(elem[0] not in my_dict.keys()):
my_dict[elem[0]] = []
my_dict[elem[0]].append(elem)
else:
if(elem not in my_dict[elem[0]]):
my_dict[elem[0]].append(elem)
print("The dictionary created is")
for k, v in my_dict.items():
print(k, ":", v)実行結果
上記のコードを実行すると、以下のような出力が得られます。
Enter the string :Hey Jane, how are you The dictionary created is H : ['Hey'] J : ['Jane,'] h : ['how'] a : ['are'] y : ['you']
コードの解説
このプログラムの処理の流れは以下の通りです。
- 文字列の入力:
input()関数を使って、ユーザーから文字列を受け取ります。 - 変数への代入: 入力された文字列は変数
my_stringに格納されます。 - 文字列の分割:
split()メソッドにより、文字列が空白区切りで単語ごとに分割され、変数split_stringに代入されます。 - 空の辞書を作成: 結果を格納するための空の辞書
my_dictを用意します。 - ループ処理: 分割された各単語に対して反復処理を行い、その単語の先頭文字がまだ辞書のキーとして存在しない場合は、新しいキーとして登録し、値として空のリストを割り当てます。
- 要素の追加: その後、現在の単語を対応するキーのリストに追加します。すでにキーが存在する場合は、重複していないかを確認したうえで直接リストに追加します。
- 結果の表示: 完成した辞書を
items()メソッドで取り出し、キーと値のペアをコンソールに出力します。
このように、split() メソッドと if 文を組み合わせることで、先頭文字ごとに単語をグループ化した辞書を効率的に作成できます。大文字と小文字は別のキーとして扱われる点にも注意してください。
-
Pythonによるデータ分析と可視化入門!pandas・matplotlibの使い方を解説
このチュートリアルでは、Pythonのpandasやmatplotlibなどのモジュールを使ったデータ分析と可視化の方法を学びます。Pythonはデータ分析に非常によく適した言語です。まずは以下のコマンドでpandasとmatplotlibをインストールしましょう。 pip install pandas pip install matplotlib インストールが完了すると成功メッセージが表示されます。まずpandasについて学び、その後でmatplotlibを見ていきましょう。 pandasとは pandasはPythonのオープンソースライブラリで、データ分析のための豊富なツールを提供し
-
Pythonの辞書にキーと値のペアを追加する方法を徹底解説
Pythonの辞書(dict)は、キーと値のペアで構成されるコレクションです。すでに定義済みの辞書に対して、新しいキーと値のペアを追加する場面は開発の中で非常によくあります。この記事では、代表的な3つの追加方法を具体例とともにわかりやすく解説します。1. 新しいキーを添字として代入する最もシンプルな方法は、新しいキーを角括弧(添字)で指定し、そこに値を代入する書き方です。既存のキーを指定すれば値が上書きされ、存在しないキーを指定すれば新しい要素が追加されます。コード例CountryCodeDict = {India: 91, UK: 44, USA: 1} print(CountryCodeD