Wie iteriere ich über einen Zahlenbereich mit nicht standardmäßiger Schrittweite in Rust?
Hallo zusammen! Ich habe gerade angefangen, Rust zu lernen, und bin auf ein Problem gestoßen, das in anderen Sprachen trivial erscheint, mich hier aber vor ein Rätsel gestellt hat.
Ich muss von 0 bis 100 mit einer Schrittweite von 3 iterieren, also: 0, 3, 6, 9, ... 99. In Python würde ich `for i in range(0, 100, 3):` schreiben, und es würde funktionieren. In Rust versuche ich das Standard `for i in 0..100` – das ergibt Schrittweite 1. Wenn ich `for i in (0..100).step_by(3)` schreibe, gibt der Compiler einen Fehler aus: "no method named `step_by` found for struct `Range`".
Ich habe gegoogelt und herausgefunden, dass `step_by` existiert, aber es funktioniert aus irgendeinem Grund nicht für einen einfachen Bereich. Ich habe versucht, einige Traits zu importieren, aber nichts hat geholfen. Mein aktueller Code sieht so aus:
```rust
fn main() {
for i in 0..100 {
println!("{}", i); // Das ist Schrittweite 1, aber ich brauche Schrittweite 3
}
// Versuche Schrittweite 3:
// for i in (0..100).step_by(3) {
// println!("{}", i);
// }
}
```
Ich habe die Dokumentation gelesen und gesehen, dass `step_by` bei `Iterator` existiert, aber