Pythonの辞書操作を詳しく解説

Jun 16, 2016 am 08:44 AM
python Pythonの辞書操作

Python ディクショナリは別の変更可能なコンテナ モデルであり、文字列、数値、タプル、その他のコンテナ モデルなど、あらゆる種類のオブジェクトを格納できます。
1. 辞書を作成します
辞書は、キーと対応する値のペアで構成されます。辞書は、連想配列またはハッシュ テーブルとも呼ばれます。基本的な構文は次のとおりです。

コードをコピー コードは次のとおりです。
dict = {'Alice': '2341', 'Beth': '9102 ', 'Cecil': '3258'}
次のような辞書を作成することもできます:
コードをコピー コードは次のとおりです:
dict1 = { 'abc': 456 };
dict2 = { 'abc': 123, 98.6: 37 };
注:
各キーと値はコロン (:) で区切られ、各ペアにコンマを使用し、各ペアをカンマで区切って、ペア全体を中括弧 ({}) で囲みます。
キーは一意である必要がありますが、値は一意ではありません。
値は任意のデータ型にすることができますが、文字列、数値、タプルなど、不変である必要があります。
2. ディクショナリ内の値にアクセスします。
次の例に示すように、対応するキーを角かっこで囲みます。コードをコピーします
コードは次のとおりです: #!/usr/bin/pythondict = {'Name': 'Zara', 'Age': 7 , 'クラス': '最初' };
print "dict['名前']: ", dict['名前'];
print "dict['年齢']: ", dict[ 'Age'];
#上記の例の出力結果:

#dict['Name']: Zara
#dict['Age']: 7
辞書にないキーを使用してデータにアクセスすると、次のエラーが出力されます。



コードをコピー
コードは次のとおりです:#!/usr/bin/pythondict = {'名前': 'ザラ'、'年齢': 7、'クラス': '初'};
print "dict['アリス']: ", dict['アリス'];

#上記の例の出力結果:

#dict['Zara']:#Traceback (最新の呼び出しは最後):
# ファイル "test.py"、4 行目、# print "dict[ 'Alice']: ", dict['Alice'];

#KeyError: 'Alice'[/code]

3. 辞書を変更します

新しいコンテンツを追加する方法次のように、新しいキーと値のペアを追加したり、既存のキーと値のペアを変更または削除したりします:

コードをコピー

コードは次のとおりです: #!/usr/bin/pythondict = {'名前': 'ザラ', '年齢': 7, 'クラス': '初'};
dict['Age '] = 8; # 既存のエントリを更新
dict['School'] = "DPS School"; # 新しいエントリを追加


print "dict['Age'] : ", dict['Age'];
print "dict['School']: ", dict['School'];
#上記の例の出力結果:
#dict['Age ']: 8
#dict['School']: DPS School


4. 辞書要素の削除
単一の要素を削除するか、辞書のみをクリアできます。 1 回の操作が必要です。
次の例に示すように、del コマンドを表示して辞書を削除します。

コードをコピーします
コードは次のとおりです: #!/usr/bin/ pythondict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'};
del dict ['Name']; # キーの削除 'Name' のエントリです
dict.clear(); # 辞書内のすべてのエントリをクリアします
del dict; # 辞書を削除します

print "dict['Age']: ", dict['Age '];
print "dict['School']: ", dict['School'];
#But del:
を使用した後は辞書が存在しないため、例外がスローされます。
dict['Age']:
#Traceback (最新の呼び出しは最後):
# ファイル "test.py"、8 行目、# print "dict[' Age']: ", dict['Age'];

#TypeError: 'type' object is unsubscriptable


5. 辞書キーの特徴

辞書の値省略可能 Python オブジェクト (標準オブジェクトまたはユーザー定義オブジェクトのいずれか) を制限的に取得しますが、キーは取得できません。
覚えておくべき 2 つの重要な点: 1) 同じキーを 2 回使用することはできません。作成中に同じキーが 2 回割り当てられた場合、次の例のように、後の値が記憶されます。


コードをコピー
コードは次のとおりです。 🎜>#!/usr/bin/pythondict = {'名前': 'ザラ', '年齢': 7, '名前': 'マンニ'};print "dict ['Name']: ", dict['Name'];
#上記例の出力結果:
#dict['Name']: Manni

2)キーは不変である必要があるため、数値、文字列、またはタプルとして使用できるため、次の例に示すようにリストは機能しません:


Copy code

コードは次のとおりです:
# !/usr/bin/pythondict = {['Name']: 'Zara', 'Age': 7};print "dict['Name']: ", dict['Name'];
#上記の例の出力結果:

#Traceback (最新の呼び出しは最後):
# ファイル "test.py"、3 行目、
# dict = {['Name']: 'Zara', 'Age ': 7};
#TypeError: リスト オブジェクトはハッシュ化できません
6. 辞書の組み込み関数とメソッド
Python 辞書には次の組み込み関数が含まれています:
1. cmp(dict1, dict2): 2 つの辞書要素を比較します。
2. len(dict): 辞書の要素数、つまりキーの総数を計算します。
3. str(dict): 辞書の印刷可能な文字列表現を出力します。
4. type(variable): 入力変数の型を返します。変数が辞書の場合は、辞書の型を返します。

Python 辞書には次の組み込みメソッドが含まれています:
1. radiansdict.clear(): 辞書内のすべての要素を削除します。
2. radiansdict.copy(): 辞書の浅いコピーを返します。 >3. radiansdict .fromkeys(): シーケンス seq 内の要素を辞書のキーとして使用して、新しい辞書を作成します。val は辞書内のすべてのキーに対応する初期値です
4. radiansdict.get(key 、default=None): 指定されたキーの値を返します。値が辞書にない場合は、デフォルト値を返します
5。 radiansdict.has_key(key): キーが辞書にある場合は true を返します。それ以外の場合は false を返します
6. radiansdict.items(): 走査可能な項目をリスト (キー、値) タプルとして返します。7. radiansdict.keys(): リスト内の辞書のすべてのキーを返します。 🎜>8. radiansdict.setdefault(key,default=None): get() と似ていますが、キーが辞書に存在しない場合は、キーが追加され、値がデフォルトに設定されます
9 、radiansdict.update(dict2): 辞書 dict2 のキーと値のペアを dict
10 に更新します、radiansdict value(): 辞書内のすべての値をリスト

として返します。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

XML形式を開く方法 XML形式を開く方法 Apr 02, 2025 pm 09:00 PM

ほとんどのテキストエディターを使用して、XMLファイルを開きます。より直感的なツリーディスプレイが必要な場合は、酸素XMLエディターやXMLSPYなどのXMLエディターを使用できます。プログラムでXMLデータを処理する場合、プログラミング言語(Pythonなど)やXMLライブラリ(XML.ETREE.ELEMENTTREEなど)を使用して解析する必要があります。

XML形式を美化する方法 XML形式を美化する方法 Apr 02, 2025 pm 09:57 PM

XMLの美化は、合理的なインデンテーション、ラインブレーク、タグ組織など、本質的に読みやすさを向上させています。原則は、XMLツリーを通過し、レベルに応じてインデントを追加し、テキストを含む空のタグとタグを処理することです。 PythonのXML.ETREE.ELEMENTTREEライブラリは、上記の美化プロセスを実装できる便利なchile_xml()関数を提供します。

XMLをPDFに変換できるモバイルアプリはありますか? XMLをPDFに変換できるモバイルアプリはありますか? Apr 02, 2025 pm 08:54 PM

XMLをPDFに直接変換するアプリケーションは、2つの根本的に異なる形式であるため、見つかりません。 XMLはデータの保存に使用され、PDFはドキュメントを表示するために使用されます。変換を完了するには、PythonやReportLabなどのプログラミング言語とライブラリを使用して、XMLデータを解析してPDFドキュメントを生成できます。

携帯電話でXMLをPDFに変換する方法は? 携帯電話でXMLをPDFに変換する方法は? Apr 02, 2025 pm 10:18 PM

携帯電話でXMLをPDFに直接変換するのは簡単ではありませんが、クラウドサービスの助けを借りて実現できます。軽量モバイルアプリを使用してXMLファイルをアップロードし、生成されたPDFを受信し、クラウドAPIで変換することをお勧めします。クラウドAPIはサーバーレスコンピューティングサービスを使用し、適切なプラットフォームを選択することが重要です。 XMLの解析とPDF生成を処理する際には、複雑さ、エラー処理、セキュリティ、および最適化戦略を考慮する必要があります。プロセス全体では、フロントエンドアプリとバックエンドAPIが連携する必要があり、さまざまなテクノロジーをある程度理解する必要があります。

携帯電話用の無料のXMLからPDFツールはありますか? 携帯電話用の無料のXMLからPDFツールはありますか? Apr 02, 2025 pm 09:12 PM

モバイルには、単純で直接無料のXMLからPDFツールはありません。必要なデータ視覚化プロセスには、複雑なデータの理解とレンダリングが含まれ、市場のいわゆる「無料」ツールのほとんどは経験がありません。コンピューター側のツールを使用したり、クラウドサービスを使用したり、アプリを開発してより信頼性の高い変換効果を取得することをお勧めします。

XMLをPDFに変換できるモバイルアプリはありますか? XMLをPDFに変換できるモバイルアプリはありますか? Apr 02, 2025 pm 09:45 PM

XML構造が柔軟で多様であるため、すべてのXMLファイルをPDFSに変換できるアプリはありません。 XMLのPDFへのコアは、データ構造をページレイアウトに変換することです。これには、XMLの解析とPDFの生成が必要です。一般的な方法には、ElementTreeなどのPythonライブラリを使用してXMLを解析し、ReportLabライブラリを使用してPDFを生成することが含まれます。複雑なXMLの場合、XSLT変換構造を使用する必要がある場合があります。パフォーマンスを最適化するときは、マルチスレッドまたはマルチプロセスの使用を検討し、適切なライブラリを選択します。

携帯電話でXMLをPDFに変換するとき、変換速度は高速ですか? 携帯電話でXMLをPDFに変換するとき、変換速度は高速ですか? Apr 02, 2025 pm 10:09 PM

Mobile XMLからPDFへの速度は、次の要因に依存します。XML構造の複雑さです。モバイルハードウェア構成変換方法(ライブラリ、アルゴリズム)コードの品質最適化方法(効率的なライブラリ、アルゴリズムの最適化、キャッシュデータ、およびマルチスレッドの利用)。全体として、絶対的な答えはなく、特定の状況に従って最適化する必要があります。

XMLの変更にはプログラミングが必要ですか? XMLの変更にはプログラミングが必要ですか? Apr 02, 2025 pm 06:51 PM

XMLコンテンツを変更するには、ターゲットノードの正確な検出が必要であるため、プログラミングが必要です。プログラミング言語には、XMLを処理するための対応するライブラリがあり、APIを提供して、データベースの運用などの安全で効率的で制御可能な操作を実行します。

See all articles