我试图同时迭代三个列表,并在循环的每次迭代中引用它们(如果有意义的话)...但是我找不到简单的方法来执行此操作...
例如
let list1 = [1,2,3,4];
let list2 = [2,4,3,1];
let list3 = [6,53,7,3];
for (x, y, z) in list1, list2, list3 {
//do stuff
}
其中 x 指列表 1 中的项目,y 指列表 2 等中的项目。
最佳答案
如果您使用 Rust 1.59 或更高版本,以下内容也适用(无需依赖 itertools
):
use std::iter::zip;
fn main() {
let list1 = [1,2,3,4];
let list2 = [2,4,3,1];
let list3 = [6,53,7,3];
for (x, (y, z)) in zip(list1, zip(list2, list3)) {
println!("{x}, {y}, {z}");
}
}
关于rust - 如何在 Rust 中同时迭代三个可迭代对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71493684/