#python #function
Вопрос:
У меня есть это:
def f(message):
l = []
for c in message:
l.append(c)
l.append('*')
return "".join(l)
Это работает, но как мне сделать так, чтобы в конце не добавлялось»*». Я хочу, чтобы это было только между введенным словом. Я новичок в python и просто пробовал что-то новое.
Ответ №1:
Может быть, вы можете попробовать это. Он использует понимание списка
input_str = 'dog'
def f(x):
return '*'.join(x)
print(f('dog')) #ouput d*o*g
print(f(input_str)) #ouput d*o*g
Комментарии:
1. Нет необходимости преобразовывать строку в список, строки уже можно повторять.
'*'.join(x)
работает нормально.2. Вы правы @MarkRansom … Я изменю свой ответ на ваш комментарий
Ответ №2:
Ну, технически вы могли бы просто разрезать возвращенную строку, отрезав последнюю астрикс.
message="dog"
def f(message):
l = []
for c in message:
l.append(c)
l.append('*')
return "".join(l[:-1])
print(f(message))
таким образом, он возвращается
d*o*g