[英]Nested loop on list string python ,
我想通過第二個 position 迭代第二個循環
我的錯誤是
發生異常:TypeError(注意:顯示了完整的異常跟蹤,但執行暫停於:)只能將列表(不是“int”)連接到列表
s = "dog cat cat dog"
b = list(s.split(" "))
for x in b:
for y in str(b+1):
print(x,'/', y)
修復代碼的一種方法是:
s = "dog cat cat dog"
b = list(s.split(" "))
for x in b:
for y in b[1:]:
print(x,'/', y)
即使我認為它沒有做它應該做的事情,因為 output 是:
dog / cat
dog / cat
dog / dog
cat / cat
cat / cat
cat / dog
cat / cat
cat / cat
cat / dog
dog / cat
dog / cat
dog / dog
也許你想要類似的東西
s = "dog cat cat dog"
b = list(s.split(" "))
for x,y in zip(b,b[1:]):
print(x,'/', y)
Output:
dog / cat
cat / cat
cat / dog
如果您只想遍歷列表兩次,其中第二次循環是列表的其余部分,您可以使用
s = "dog cat cat dog"
b = s.split(" ")
for i in range(len(b)):
for j in range(i+1, len(b)):
# i is the first index, j is the indices of the remaining entries
# So x = b[i], y = b[j]
我不確定我是否完全理解你在尋找什么,也許是這樣的?
s = "dog cat cat dog"
b = s.split(" ")
for i in range(len(b)):
for j in range(i+1, len(b)):
print(b[i],'/', b[j])
返回
dog / cat
dog / cat
dog / dog
cat / cat
cat / dog
cat / dog
此外,您不需要將對split()
的調用強制轉換為列表,因為它已經返回了一個列表。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.