我需要定义一个重复3次的函数。我只能让它作为一个列表工作,如果输入为1,则输出为1,1,1。但是,我需要输出为111这就是我所拥有的
def repeat_number(num):
if not type(num) is int:
return None
list_1 = []
x = list_1.append(num)
y = list_1*3
for i in y:
return i,i,i
a = 12
print (repeat_number(a))同样,我希望输出为121212
发布于 2015-04-09 07:37:21
为此,您可以使用一个简单的str.join,并创建一个通用函数:
def repeat(something, times, separator):
return separator.join([str(something) for _ in range(times)])现在使用它来创建您的特定函数:
def repeat_three_times(something):
return repeat(something, 3, '')输出:
>>> repeat_three_times(1)
'111'需要注意的几件事:
str将预期的整数转换为字符串str.join期望的str.join创建了一个字符串,该字符串是列表中字符串的串联(请参见2)。<代码>H213<代码>G214下面是一个以不同方式使用更通用函数的示例:
>>> repeat(1, 4, ',')
'1,1,1,1'发布于 2015-04-09 07:39:50
def repeat_number3(a):
return str(a)*3发布于 2015-04-09 07:40:06
def repeat_num(x):
return str(x)*3https://stackoverflow.com/questions/29527150
复制相似问题