2024-06-27 20:53:26 发布
网友
我知道如何使用for循环迭代字典中的项。但是我需要知道的是如何使用while循环迭代字典中的项。可能吗
这就是我用for循环尝试的方式
user_info = { "username" : "Hansana123", "password" : "1234", "user_id" : 3456, "reg_date" : "Nov 19" } for values,keys in user_info.items(): print(values, "=", keys)
如果访问while循环,则不能使用while循环对dict进行迭代,因为dict元素是无序的,并且在while循环中,只能通过索引访问str list tuples之类的iterable,而dict没有索引。我希望这能澄清你的问题
可以使用iter和next循环while来迭代字典中的项。这与for循环在任何iterable上的后台执行迭代的过程几乎相同
iter
next
while
for
代码:
user_info = { "username" : "Hansana123", "password" : "1234", "user_id" : 3456, "reg_date" : "Nov 19" } print("Using for loop...") for key, value in user_info.items(): print(key, "=", value) print() print("Using while loop...") it_dict = iter(user_info.items()) while key_value := next(it_dict, None): print(key_value[0], "=", key_value[1])
输出:
Using for loop... username = Hansana123 password = 1234 user_id = 3456 reg_date = Nov 19 Using while loop... username = Hansana123 password = 1234 user_id = 3456 reg_date = Nov 19
这不是我所做的完美解决方案,但它在while循环中
user_info = { "username" : "Hansana123", "password" : "1234", "user_id" : 3456, "reg_date" : "Nov 19" } i = 0 length = len(list(user_info.items())) keys, values = list(user_info.keys()), list(user_info.values()) while i < length: print(values[i], "=", keys[i]) i += 1
如果访问while循环,则不能使用while循环对dict进行迭代,因为dict元素是无序的,并且在while循环中,只能通过索引访问str list tuples之类的iterable,而dict没有索引。我希望这能澄清你的问题
可以使用
iter
和next
循环while
来迭代字典中的项。这与for
循环在任何iterable上的后台执行迭代的过程几乎相同代码:
输出:
这不是我所做的完美解决方案,但它在while循环中
相关问题 更多 >
编程相关推荐