簡體   English   中英

對於字典中的循環

[英]For loops in Dictionaries

我正在嘗試在字典中使用for循環來表示未知的語句,這些語句可能需要在字典中(基於陳述類時的指定數量)。 我想知道如果根本沒有什么語法。

今天早些時候,一個朋友讓我做一個“選擇你自己的冒險”游戲

  • 我想要一個隨機頁面作為死亡頁面。

  • 其余頁面是故事/問題頁面。

  • 我還想擁有一個字典,當我輸入頁碼時,它返回的是頁面的類型。

我試圖使用for語句來獲取該類調用的頁碼。 這些頁面是隨機的,因此我無法知道。

from time import sleep
from random import randint

def ClearSys():
  for i in range(0,100):
    print("\n")
class Book:
  def __init__(self,name,pages):

    #self.DeathPage#
    RandomPage=randint(2,pages)
    self.DeathPage=RandomPage
    del RandomPage

    #self.pages#
    self.pages=["Introduction Page"]
    for i in range(2,pages):
      if not i==self.DeathPage:
        self.pages.append("QuestionPage")
      else:
        self.pages.append("DeathPage")



    ####MAIN SECTION I WOULD LIKE TO HIGHLIGHT####
    ##Page number dictionary##
    self.PageNumberToType={
      0:"Introduction Page",
      for i in range(1,len(self.pages)):
        i:self.pages[i]
    }
    ########

我並不是真的希望這能奏效,但我只是將其寫出來以查看是否可行。

我所不知道的; 但是為什么它必須在字典文字中?

self.PageNumberToType = { 0:"Introduction Page" }

for i in range(1, len(self.pages)):
    self.PageNumberToType[i] = self.pages[i]

因為順序對於字典而言並不重要,所以您也可以進行字典理解:

self.PageNumberToType = {i: self.pages[i]
                         for i in range(1, len(self.pages[i]))}

self.PageNumberToType.update({0: 'Introduction Page'})

暫無
暫無

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

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