У меня возникают проблемы с возвратом моей функции указанной длины, содержащей повторения определенного значения.Как получить функцию для создания и возврата списка указанной длины
Пример.
def myString(v, 5)
>>> v v v v v
У меня возникают проблемы с возвратом моей функции указанной длины, содержащей повторения определенного значения.Как получить функцию для создания и возврата списка указанной длины
Пример.
def myString(v, 5)
>>> v v v v v
Использование умножения:
>>> v = 'v'
>>> v * 5
'vvvvv'
Если вам нужны пробелы между ними, используйте список и присоединиться выход с пространством:
>>> ' '.join([v] * 5)
'v v v v v'
Синтаксис для определения является неправильным, что может вызвать некоторые из ваших проблем. Вот полная функция, которая будет работать с командой присоединиться():
def makestring(mychar, num):
return " ".join([mychar] * num)
makestring('v', 5)
Если вы пытаетесь выучить язык, вот еще один пример, который может помочь. Нижеприведенная версия намного менее эффективна, но строит строку таким образом, который может быть проще выполнить. Вы должны быть в состоянии увидеть, как строка построен один символ времени:
def makestring(mychar, num):
mystr = ""
for i in range(num-1):
mystr = mystr + mychar + " "
mystr = mystr + mychar
return mystr
makestring('v', 5)
или '('V' * 5) [: - 1]' – georg
@ thg435: Это чувствует себя неправильно мне; построить строку, а затем построить строку * new * минус один символ. –
'' v '* 4 +' v'' then;) – georg