Sorozat

Sorozat

Könnyű

Utasítások

Adott egy számjegyekből álló string. Add vissza a benne előforduló összes n hosszúságú, összefüggő részstringet abban a sorrendben, ahogy megjelennek.

Például a „49142” stringnek a következő háromjegyű sorozatai vannak:

  • „491”
  • „914”
  • „142”

És a következő négyjegyű sorozatai:

  • „4914”
  • „9142”

Ha pedig egy ötjegyű stringből hatjegyű sorozatot kérsz, azt kapod, amit érdemelsz.

Vedd figyelembe, hogy ezeknek a sorozatoknak csak szomszédos pozíciókat kell elfoglalniuk a bemenetben; a számjegyeknek nem kell számszerűen egymást követőnek lenniük.

Kivételüzenetek

Néha szükség van arra, hogy kivételt dobj. Ilyenkor mindig adj meg egy beszédes hibaüzenetet, amely megmutatja, honnan ered a hiba. Ettől olvashatóbb lesz a kódod, és sokat segít a hibakeresésben. Ha tudod, hogy a hiba forrása egy adott típusú lesz, dönthetsz úgy, hogy a beépített hibatípusok egyikét dobod, de ilyenkor is adj meg beszédes üzenetet.

Ennél a feladatnál a raise utasítással kell „dobnod” egy ValueError-t, ha a slice() függvénynek átadott series és/vagy length paraméter üres vagy tartományon kívül esik. A tesztek csak akkor lesznek sikeresek, ha a raise-szel dobod az exception-t, és üzenetet is fűzöl hozzá.

Ha üzenettel szeretnél ValueError-t dobni, írd az üzenetet az exception típus argumentumaként:

# if the slice length is zero.
raise ValueError("slice length cannot be zero")

# if the slice length is negative.
raise ValueError("slice length cannot be negative")

# if the series provided is empty.
raise ValueError("series cannot be empty")

# if the slice length is longer than the series.
raise ValueError("slice length cannot be greater than series length")
Szerkesztés GitHubon A hivatkozás új ablakban vagy lapon nyílik meg
Python Exercism

Készen állsz elkezdeni a(z) Sorozat feladatot?

Iratkozz fel az Exercism-re, hogy megtanuld és elsajátítsd a(z) Python nyelvet 17 fogalom146 feladat segítségével, valódi emberi mentorálással, mindez ingyen.