이 글은 python에 대한 관련 지식을 제공합니다. for 루프를 사용하여 Python 사전을 탐색하는 방법에 대해 주로 소개합니다. 모두에게 도움이 되기를 바랍니다.
추천 학습: python 비디오 튜토리얼
Python에서 "for" 루프를 사용하여 사전을 탐색하는 방법은 무엇입니까?
오늘 우리는 세 가지 방법을 시연하고 중첩된 사전을 탐색하는 방법을 배웁니다.
실제 전투에 앞서 시뮬레이션 데이터 사전을 생성해야 합니다.
dict_1 = {'Name': 'Zara', 'Age': 7, 'Class': 'First','Address':'Beijing'}
Python에서 사전을 반복하는 가장 쉬운 방법은 사전을 for 루프에 직접 넣는 것입니다.
Python은 자동으로 dict_1
을 사전으로 처리하고 해당 키를 반복할 수 있게 해줍니다. 그런 다음 인덱스 연산자를 사용하여 각 값을 얻을 수 있습니다. dict_1
视为字典,并允许你迭代其key键。然后,我们就可以使用索引运算符,来获取每个value值。
for key in dict_1: print(key, ":", dict_1[key])
如果你想按照字母顺序排列key键,可以使用sorted()
方法,具体用法如下所示。
for key in sorted(dict_1): print(key, ":", dict_1[key])
使用.keys()返回包含字典键的 Python 对象的方法,可以获得与方法1相同的结果。同样,它也需要与索引运算符结合使用。
for key in dict_1.keys(): print(key, '-->', dict_1[key])
其实,遍历字典的最“pythonic”和优雅的方法,是使用.items()方法。
print(dict_1.items())
为了迭代transaction_data字典的键和值,您只需要“解包”嵌入在元组中的两个项目,如下所示:
for k,v in dict_1.items(): print(k,">>",v)
需要注意,k
和v
只是“键”和“值”的标准别名,但你也可以选择其他命名约定。
比如,我们可以更换成a
和b
,也会有相同的输出。
for a,b in dict_1.items(): print(a,"-",b)
有时候,我们会遇到比较复杂的字典——嵌套字典。
那么这种情况该如何办呢?
dict_2 = {"num_1":{'Name': 'Zara', 'Age': 7, 'Class': 'First','Address':'Beijing'}, "num_2":{'Name': 'BOb', 'Age': 32, 'Class': 'Six','Address':'Shanghai'}, "num_3":{'Name': 'Tom', 'Age': 25, 'Class': 'Second','Address':'Wuhan'}}dict_2
为了解开属于每个嵌套字典的键值对,我们可以这样做:
for k, v in dict_2.items(): if type(v) is dict: for nk, nv in v.items(): print(nk, "→", nv)
通过if语句判断value值是不是字典,如果是,则使用前面提到的方法 3,使用 .items( ) 进行迭代输出。
运行结果如下所示。
如果只想解压其中的部分字典,可以在if语句中增加条件。
for k, v in dict_2.items(): if type(v) is dict and k == 'num_2': for sk, sv in v.items(): print(sk, "-->", sv)
只输出num_2
rrreee
키를 정렬하고 싶다면 알파벳 순서 키를 사용하려면 sorted()
메서드를 사용할 수 있으며 구체적인 사용법은 다음과 같습니다.
방법 2: .keys( ) 사용 + 인덱스별로 반복 .keys() 메서드를 사용하여 사전 키가 포함된 Python 객체를 반환하면 메서드 1과 동일한 결과를 얻을 수 있습니다. 마찬가지로 인덱싱 연산자와 함께 사용해야 합니다.
rrreee🎜🎜🎜🎜방법 3: .items( ) to iterate🎜🎜🎜사실, 사전을 반복하는 가장 "파이썬적"이고 우아한 방법은 .items() 메서드를 사용하는 것입니다. 🎜rrreee🎜🎜🎜키와 값을 반복하려면 transaction_data 사전의 경우 다음과 같이 튜플에 포함된 두 항목을 "압축해제"하면 됩니다. 🎜rrreee🎜🎜🎜k
및 v
는 "키"와 "값"에 대한 표준 별칭이지만, 다른 명명 규칙을 선택할 수도 있습니다. 🎜🎜예를 들어 a
및 b
로 바꾸면 동일한 출력이 표시됩니다. 🎜rrreee🎜🎜🎜🎜고급: 중첩된 사전 트래버스 🎜🎜 🎜때때로 우리는 더 복잡한 사전, 즉 중첩 사전을 접하게 됩니다. 🎜🎜그러면 이런 상황에서는 어떻게 해야 할까요? 🎜rrreee🎜🎜🎜속해 있는 중첩을 풀기 위해 사전의 키-값 쌍에 대해 다음을 수행할 수 있습니다. 🎜rrreee🎜 if 문을 사용하여 값이 사전인지 확인합니다. 그렇다면 이전에 언급한 방법 3을 사용하고 .items()를 사용합니다. 반복 출력. 🎜🎜실행 결과는 다음과 같습니다. 🎜🎜🎜🎜일부 압축만 풀고 싶은 경우 사전, 조건을 if 문에 추가할 수 있습니다. 🎜rrreee🎜num_2
의 사전만 출력합니다. 실행 결과는 다음과 같습니다. 🎜🎜🎜🎜🎜위는 Python에서 사전을 탐색하기 위해 "for" 루프를 사용하는 팁입니다. 🎜🎜추천 학습: 🎜python 비디오 튜토리얼🎜🎜위 내용은 For 루프를 사용하여 Python 사전을 순회하는 세 가지 방법(자세한 예)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!