簡體   English   中英

如何在python的for循環內使用len(dictionary)?

[英]How to use len(dictionary) inside a for loop in python?

我在python中有一個代碼段,我嘗試運行它,但我無法理解所生成的輸出。 這是我的代碼:

s = {"chris" :["1", "22", "333", "4444"] }

First For循環及其輸出:

for i in range(len(s["chris"])):                     #10
      print(s["chris"][i])

Output: 
1
22
333
4444

Second For循環及其輸出:

for i in range (len(s["chris"])):                    #7
      print(len(s["chris"][i]))

Output:
1
2
3
4

如果有人可以幫助我理解for循環代碼並幫助我理解所產生的輸出,那將是一個很大的幫助。 謝謝。

說明:

第一個例子:

  • 遍歷字典chris鍵的rangerange0parameter - 1的迭代器)

  • 然后使用該索引獲取字典的chris鍵中的值

第二個例子:

  • 與第一個示例相同,只是長度有所增加,因此'1'長度為1,而'22'長度為2,依此類推

您有字典 s"chris"是指向列表的鍵["1", "22", "333", "4444"] 因此,調用s["chris"]會給您列表["1", "22", "333", "4444"] ,而s["chris"][i]是i = 0,... 3 ,為您提供此列表的元素,即s["chris"][0] = "1"s["chris"][1] = "22"等,其余的您都應該弄清楚自己。

讓我補充一下,第一個循環等效於

for val in s["chris"]:             
      print(val)

第二個循環到

for val in s["chris"]:             
      print(len(val))

當您將for i in range(some integer) ,循環會將i從0迭代到some integer - 1例如,以下代碼將給出0 1 2 3 4作為輸出

for i in range(5):
    print (i)

在你的第一個for循環迭代你i ,直到4這是列表的長度"chris"和正在打印的i th元素在"chris" list.So你得到的第一輸出

在第二個循環中,循環條件是相同的,但是您在其中打印"chris"列表的第i th元素的長度,即1 2 3 4,這是您在第二個循環中的輸出。

希望你能理解

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM