![](/img/trans.png)
[英]How to implement a while true loop correctly for two user inputs in python?
[英]How to use two loop correctly in python
大家好,我有問題
這是我的代碼:
services = {
'first':[],
'second':[]
}
x = [1,2,3,4,5]
for i in services:
print('loop-one - ',i)
for i in x:
services['first'].append(i)
print(services)
這段代碼的輸出是{'first': [1, 2, 3, 4, 5, 1, 2, 3, 4, 5], 'second': []}
如果你注意到他加了兩次。
我的目的是這樣的,我想添加一次{'first': [1, 2, 3, 4, 5], 'second': []}
謝謝 !
內部for
循環使用與外部循環相同的循環變量i
。 這意味着i
的值被內部循環的每次迭代覆蓋,並且i
的最終值用於更新服務字典。
以下是如何編寫代碼以正確迭代兩個索引:
services = {
'first':[],
'second':[]
}
x = [1,2,3,4,5]
for service in services:
print('loop-one - ', service)
for i in x:
services[service].append(i)
print(services)
您的問題似乎是在您的外循環中您正在遍歷services
字典。 services
字典包含兩個鍵值對,然后您可以迭代第一個鍵值對並將結果附加到“第一個”列表鍵值對。 請問如果您想要的輸出是{'first': [1, 2, 3, 4, 5], 'second': []}?
使用單個 for 循環的更簡單方法是這樣的,您可以在此處找到有關擴展方法的文檔https://docs.python.org/3/tutorial/datastructures.html :
for service in services:
services[service].extend(x)
要求有2個循環嗎? 我只是想知道。
如果是這樣,您可以嘗試以下語法:
for service in services:
print('loop-one - ',service)
for num in x:
services[service].append(num)
print(services)
我假設您正在嘗試從x
數組/列表中寫入數據,然后將其附加到第一個和第二個列表。 我希望這有幫助
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.