编写一个函数,将一个字符串重复 n 次,并将每次重复与另一个字符串分开
Writing a function that repeats a string n times and separates each repetition with another string
我正在尝试编写一个需要 3 个输入的函数:一个字符串(名为 word
)、一个整数(名为 n
)、另一个字符串(名为 delim'
、
那么该函数必须重复名为 word
n
次的字符串(这很简单)并且在每次重复之间它必须插入名为 delim
.
的字符串
我知道这段代码有效:
print('me', 'cat', 'table', sep='&')
但这段代码没有:
print(cat*3, sep='&')
我写的代码几乎没用,但我还是会 post — 可能还有其他我不知道的错误或不准确之处。
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
您可以使用 iterable unpacking 并且只能使用 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)))
您正在寻找print('petting'.join(["cat"]*3))
$ python3
Python 3.6.9 (default, Jan 26 2021, 15:33:00)
[GCC 8.4.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> print('petting'.join(["cat"]*3))
catpettingcatpettingcat
>>>
返回字符串对象的函数
def repeat(word, n, sep='&'):
return sep.join(word for _ in range(n))
print(repeat('Hallo', 3))
输出
hallo&hallo&hallo
要重复单词,您可以使用循环和变量来存储重复方法的输出。这是您如何实现它的示例。
def repeat(word, n, delim):
str = ''
for i in range(n): # this will repeat the next line n times.
str += word + delim
return str[0:len(str) - len(delim)] # len(delim) will remove the last 'delim' from 'str'.
在您的 main 方法中,您需要打印从 repeat 方法返回的内容。例如:
print(repeat(string, n, delim))
你可以试试这个
def myprint(word, n, delim):
ans = [word] * n
return delim.join(ans)
print(myprint('cat',3,'petting'))
catpettingcatpettingcat
我正在尝试编写一个需要 3 个输入的函数:一个字符串(名为 word
)、一个整数(名为 n
)、另一个字符串(名为 delim'
、
那么该函数必须重复名为 word
n
次的字符串(这很简单)并且在每次重复之间它必须插入名为 delim
.
我知道这段代码有效:
print('me', 'cat', 'table', sep='&')
但这段代码没有:
print(cat*3, sep='&')
我写的代码几乎没用,但我还是会 post — 可能还有其他我不知道的错误或不准确之处。
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
您可以使用 iterable unpacking 并且只能使用 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)))
您正在寻找print('petting'.join(["cat"]*3))
$ python3
Python 3.6.9 (default, Jan 26 2021, 15:33:00)
[GCC 8.4.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> print('petting'.join(["cat"]*3))
catpettingcatpettingcat
>>>
返回字符串对象的函数
def repeat(word, n, sep='&'):
return sep.join(word for _ in range(n))
print(repeat('Hallo', 3))
输出
hallo&hallo&hallo
要重复单词,您可以使用循环和变量来存储重复方法的输出。这是您如何实现它的示例。
def repeat(word, n, delim):
str = ''
for i in range(n): # this will repeat the next line n times.
str += word + delim
return str[0:len(str) - len(delim)] # len(delim) will remove the last 'delim' from 'str'.
在您的 main 方法中,您需要打印从 repeat 方法返回的内容。例如:
print(repeat(string, n, delim))
你可以试试这个
def myprint(word, n, delim):
ans = [word] * n
return delim.join(ans)
print(myprint('cat',3,'petting'))
catpettingcatpettingcat