簡體   English   中英

嘗試創建一個長度取決於 for 循環的 ['_', '_', '_'] 列表

[英]Trying to make a list that is ['_', '_', '_'] with the length depending on a for loop

我正在嘗試列出以后可以單獨填寫的“空白”列表。 列表的長度取決於一個值( currentWord ),這就是我無法對其進行硬編碼的原因。

iter8 = len(currentWord)
for i in currentWord:
    answerListNEW.append(' ')
    #
for i in currentWord:
    answerListNEW[i] = '_'

我收到索引必須是整數而不是 str 的錯誤。 程序有沒有辦法接受“空格”? 為簡單起見,讓我們說 currentWord = 'alpha' 這樣它就很簡單並且只有 5 次迭代。

其次,我還想將該列表打印為連接字符串,因此它只是“_____”。 (這樣,當添加值時,它會變成 ' v ' 等等。

提前致謝!!

i in currentWord將遍歷該字符串的字母(假設它是一個字符串)。 正如錯誤所說,列表不能按字母索引。

您可以使用range()

answerListNEW = ['_' for _ in range(len(currentWord))]

或列出乘法

answerListNEW = ['_'] * len(currentWord)

或“列出”所有下划線的字符串

answerListNEW = list('_' * len(currentWord))

也喜歡將該列表打印為連接字符串

print(''.join(answerListNEW))

我還想將該列表打印為連接字符串,所以它只是'_____'

字符串已經與列表具有大部分相同的屬性,所以為什么要麻煩制作列表,只是將其轉換為字符串。

你可以做類似的事情

answerListNew = '_' * len(currentWord)

如果您想要一個與包含所有“_”字符的currentWord長度相同的字符串。

對於一個實際的字母列表(允許你一個一個地修改字母),你可以做

answerListNew = ['_'] * len(currentWord)

並將其轉換為字符串形式

answerStrNew = ''.join(answerListNew)

暫無
暫無

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

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