Middle — Senior
Hozzon létre egy olyan függvényt, amely elfogad egy számokat tartalmazó tömböt, és visszaad egy sztringet a sorozatos számok tartományairól?
sobes.tech MI
Válasz az MI-től
Az alábbiakban egy Python függvény példáját találod, amely egy rendezett számokat tartalmazó tömböt fogad, és egy olyan karakterláncot ad vissza, amelyben a folyamatos számok tartományokban vannak összefoglalva. A folyamatos számokat "kezdő- vég" formátumú tartományokba egyesítjük, az egyedi számokat pedig úgy jelenítjük meg, ahogy vannak.
def ranges_to_string(nums):
if not nums:
return ""
tartomanyok = []
kezdet = elozo = nums[0]
for num in nums[1:]:
if num == elozo + 1:
elozo = num
else:
if kezdet == elozo:
tartomanyok.append(str(kezdet))
else:
tartomanyok.append(f"{kezdet}-{elozo}")
kezdet = elozo = num
# Utolsó tartomány hozzáadása
if kezdet == elozo:
tartomanyok.append(str(kezdet))
else:
tartomanyok.append(f"{kezdet}-{elozo}")
return ",".join(tartomanyok)
# Példa a használatra
arr = [1, 2, 3, 5, 6, 8, 9, 10]
print(ranges_to_string(arr)) # Kimenet: 1-3,5-6,8-10