gpt4 book ai didi

python - 使用for循环在python中的2个列表上迭代变量

转载 作者:太空宇宙 更新时间:2023-11-04 03:47:55 25 4
gpt4 key购买 nike

如果在 python 中执行以下 for 循环,会发生什么情况? i 的值在每次迭代中将如何变化。序列 x 和 y 组合形成一个序列吗?

for i in x, y:
do_something(i)

我正在尝试的代码是这样的:

for sentence in snippet, phrase:
result = sentence[:]

snippet 和 phrases 是参数,其值将被列表替换,即 snippet 和 phrase 都将是列表。

最佳答案

更新:好的,原来你问的是完全不同的东西。

您的代码不会合并snippetphrase。在循环的第一次迭代中,snippet 的副本将分配给 result。在第二次迭代中,phrase 的副本将分配给 result,替换旧值。如果你想创建一个包含 snippetphrase 元素的列表,你可以只使用

result = snippet + phrase

或者如果你真的想使用循环,

result = []
for sentence in snippet, phrase:
result += sentence

x, y 是一个元组。换句话说,它是这样解析的:

for i in (x, y):
do_something(i)

这意味着 do_something 将在 x 上调用一次,在 y 上调用一次。

如果您想遍历 xy 中的成对对应元素,请使用 zip:

for i in zip(x, y):
# or
# for x_element, y_element in zip(x, y):
do_something(i):

如果你想遍历x的元素,那么y的元素,你可以使用

import itertools
for i in itertools.chain(x, y):
do_something(i)

或者如果xy都是列表或者都是元组,

for i in x + y:
do_something(i)

关于python - 使用for循环在python中的2个列表上迭代变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22777259/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com