回答編集履歴
1
リンク先を間違えたため修正 (`Index` → `SliceIndex`)
answer
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
ご提示のPythonコードであれば、このように記述することもできます。ただしPythonとは違い、Rustの`[T]`, `[T; N]`, `Vec<T>`に[対する添字](https://doc.rust-lang.org/stable/std/
|
1
|
+
ご提示のPythonコードであれば、このように記述することもできます。ただしPythonとは違い、Rustの`[T]`, `[T; N]`, `Vec<T>`に[対する添字](https://doc.rust-lang.org/stable/std/slice/trait.SliceIndex.html)は範囲外だと[パニック](https://doc.rust-jp.rs/book-ja/ch09-01-unrecoverable-errors-with-panic.html)が発生することに注意してください。
|
2
2
|
|
3
3
|
```rust
|
4
4
|
let a/*: [i32; 3]*/ = [0, 1, 2];
|
@@ -30,7 +30,7 @@
|
|
30
30
|
let _ = a[range];
|
31
31
|
```
|
32
32
|
|
33
|
-
もう一つ大きな違いとしては、[[]の中に入れられる範囲](https://doc.rust-lang.org/stable/std/
|
33
|
+
もう一つ大きな違いとしては、[[]の中に入れられる範囲](https://doc.rust-lang.org/stable/std/slice/trait.SliceIndex.html)は`step`のような情報を持ちません。stepしたい場合は[イテレータで解決する](https://doc.rust-jp.rs/book-ja/ch13-02-iterators.html)必要があります。
|
34
34
|
|
35
35
|
```rust
|
36
36
|
let a = [1, 2, 3, 4, 5];
|