小编Vik*_*kar的帖子

为什么在 for 循环中没有修改阴影变量的值?

我不确定为什么foofor循环中没有修改阴影变量的值:

fn main() {
    let foo: i32 = 5;
    for _x in 0..5 {
        let foo = foo + 1;
    }
    println!("Value of foo: {}", foo);
    //This prints Value of foo: 5

    let bar: i32 = 5;
    let bar = bar + 1;
    println!("Value of bar: {}", bar);
    //This prints Value of foo: 6
}
Run Code Online (Sandbox Code Playgroud)

我浏览了变量和可变性部分以及一些堆栈溢出问题,但我找不到foo未修改值的原因。

我在loop.

  1. 不要forloop有阴影变量的一些限制?为什么不允许?
  2. 如果在循环中隐藏变量不是一个好习惯,我应该使用一个mut能够变量吗?

我正在使用 Rust 1.42.0

for-loop rust

0
推荐指数
1
解决办法
446
查看次数

Python展平由字符串连接的列表

我有一个列表列表,我想在它们之间插入一个项目时将其展平。我的原始清单采用以下形式:

l = [["a","b"],["c"],["d"]]
Run Code Online (Sandbox Code Playgroud)

我想要的是,展平列表并用字符分隔它们

n = ["a","b",".","c",".","d"]
Run Code Online (Sandbox Code Playgroud)

正如许多SO 答案中提到的那样,应该可以使用列表理解来扁平化列表:

flat_list = [item for sublist in l for item in sublist]
Run Code Online (Sandbox Code Playgroud)

但是是否可以使用我选择的字符/字符串来展平列表?

可以通过附加.到除最后一个列表之外的每个列表来完成。但是有没有更优雅的东西.join

python list python-3.x

0
推荐指数
1
解决办法
48
查看次数

标签 统计

for-loop ×1

list ×1

python ×1

python-3.x ×1

rust ×1