python:返回概念

时间:2020-08-20 10:54:22

标签: python python-3.x python-2.7

我有一个简单的代码:

def string_times(str, n):
  if n==0:
    return ""
  else:
    for i in range(n):
        return str
        i=i+1
      
print(string_times('Hi',2))

预期输出为HiHi,但我的输出为HI。为什么会这样?

2 个答案:

答案 0 :(得分:1)

您可以直接使用:

print("Hi"*2)

输出: HiHi

答案 1 :(得分:-1)

我会这样写函数:


def string_times(str_, n):
    if n != 0:
        for i in range(n):
            print(str_, end='')
    else:
        print(' ',end='')

我不会将'str'用作变量并在函数中打印。

然后您可以调用函数python string_times('Hi',2),它将为您提供所需的结果。

如果您希望每个“ Hi”在不同的行中,只需删除结束参数