Функция Python проекта, функция гисто, которые возвращают O
Гистограмма (xs): учитывая список целых чисел с именем xs, возвращает строку, в которой при печати отображается гистограмма, соответствующая целым числам. Используйте маленькое "о" в качестве символа дисплея.
- Предположим: xs - это список неотрицательных целых чисел; хз может быть пустым.
- Ограничения: в настоящее время не указано.
- гистограмма ([3,10,0,5]) → 'ooo\noooooooooo\n\nooooo'
- гистограмма ([]) → ''
Вот что я попробовал:
def histogram(xs):
last = len(xs)
histo = ''
for number in xs:
while number > 0:
histo += 'o'
number -= 1
last -= 1
if last == 0:
if histo == None:
return ''
return histo
histo += '\n'
1 ответ
Возможно, вы неправильно указали отступы, когда редактировали ваш вопрос. Я должен был догадаться, потому что я вытащил это из комментария. Кроме того, у вас могли возникнуть проблемы с отступами. В любом случае, это похоже на работу (это ваш оригинальный код с правильными отступами):
def histogram(xs):
last = len(xs)
histo = ''
for number in xs:
while number > 0:
histo += 'o'
number -= 1
last -= 1
if last == 0:
if histo == None:
return ''
return histo
histo += '\n'
Вот более компактное решение:
def histogram(xs):
output = ""
for number in xs:
output += "o" * number + "\n"
return output