首页 > 解决方案 > 编写一个将字符串重复 n 次并将每个重复与另一个字符串分开的函数

问题描述

我正在尝试编写一个需要 3 个输入的函数:一个字符串(named word)、一个整数(named n)、另一个字符串(named delim',然后该函数必须重复命名为word ntimes 的字符串(这很容易)并且在每次重复之间重复它有插入名为delim.

我知道这段代码有效:

print('me', 'cat', 'table', sep='&')

但这段代码没有:

print(cat*3, sep='&')

我写的代码几乎没用,但我还是会发布它——可能还有其他我不知道的错误或不准确之处。

def repeat(word, n, delim):
    print(word*n , sep=delim)

def main():
    string=input('insert a string:  ')
    n=int(input('insert number of repetition:  '))
    delim=input('insert the separator:  ')

    repeat(string, n, delim)

main()

例如,给定这个输入:

word='cat', n=3, delim='petting'

我希望程序回馈:

catpettingcatpettingcat

标签: pythonpython-3.xstringrepeat

解决方案


您可以使用可迭代解包并仅使用以下print功能:

def repeat(word, n, delim):
    print(*n*[word], sep=delim)

或者只是使用str.join

def repeat(word, n, delim):
    print(delim.join(word for _ in range(n)))

推荐阅读