簡體   English   中英

如何檢查列表中每n個連續元素的格式

[英]How can I check the format of every n consecutive elements in a list

例如說我有一個20個元素的列表,我想檢查每4個連續的元素是否遵循一個模式。 考慮以下:

list = ["start1", "1/2". "3/4", "end1"]

我要確保從list[0]開始的每個第4個元素都包含“開始”,並且從list[1]list[2]開始的每個第4個元素都包含一個“ /”。 如果不是,我想輸入一個占位符" " ,例如:

我想要list2:

list2 = ["start1", "1/2", "end1"]

成為:

list3 = ["start1", "1/2", " ", "end1"]

由於您沒有發布任何嘗試,因此我不會為您提供任何完整的解決方案,但有一條提示可能對您有用:

for i in range(0,len(list),3):
    print(list[i])

此代碼將遍歷列表中的每個第四個元素。 也許從這里您可以考慮如何進行所需的檢查以及如何執行所需的輸入。 (請注意,如果在迭代列表時增加列表的長度,則可能還需要操縱迭代變量)。

當然,還有許多其他方式可以完成此任務。

看來您正在嘗試在列表中移動項目。

這個答案應該對你有幫助

在列表中移動項目?

所以看來您必須使用

insert() and pop()

提供您所需要的。

對於算法本身,取模將很有用,因為我們知道:

if index % 4 == 0 AND contains "start"
  if i + 1 AND i + 2 contains "/"

干杯!

暫無
暫無

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

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