Python 为什么计数器代码会在每次计数时添加额外的行?

Python 为什么计数器代码会在每次计数时添加额外的行?,python,for-loop,while-loop,counter,Python,For Loop,While Loop,Counter,这个代码有什么问题 它每次向上或向下计数时都会添加额外的行 我怎样才能防止这种情况发生,以及为什么会发生这种情况 def counter(start, stop): x = start if start > stop: return_string = "Counting down: " while x >= stop: return_string += str(x) x = x-1

这个代码有什么问题 它每次向上或向下计数时都会添加额外的行 我怎样才能防止这种情况发生,以及为什么会发生这种情况

def counter(start, stop):
    x = start
    if start > stop:
        return_string = "Counting down: "
        while x >= stop:
            return_string += str(x)
            x = x-1 
            if start != stop:
                return_string += ","
            print(return_string)
    else:
        return_string = "Counting up: "
        while x <= stop:
            return_string += str(x)
            x = x + 1 
            if start != stop:
                return_string += ","
            print(return_string)
    return return_string

print(counter(1, 10)) # Should be "Counting up: 1,2,3,4,5,6,7,8,9,10"
print(counter(2, 1)) # Should be "Counting down: 2,1"
print(counter(5, 5)) # Should be "Counting up: 5"
def计数器(启动、停止):
x=开始
如果开始>停止:
return\u string=“倒计时:”
当x>=停止时:
返回字符串+=str(x)
x=x-1
如果开始停止:
返回字符串+=“,”
打印(返回字符串)
其他:
return\u string=“向上计数:”
当x使用此选项时:

def counter(start, stop):
    x = start
    if start > stop:
        return_string = "Counting down: "
        while x >= stop:
            return_string += str(x)
            x = x-1
            if start != stop:
                return_string += ","
        print(return_string)
    else:
        return_string = "Counting up: "
        while x <= stop:
            return_string += str(x)
            x = x + 1
            if start != stop:
                return_string += ","
        print(return_string)
    return return_string
def计数器(启动、停止):
x=开始
如果开始>停止:
return\u string=“倒计时:”
当x>=停止时:
返回字符串+=str(x)
x=x-1
如果开始停止:
返回字符串+=“,”
打印(返回字符串)
其他:
return\u string=“向上计数:”
当x
def计数器(启动、停止)时:
x=开始
如果x>停止:
return\u string=“倒计时:”
当x>=停止时:
返回字符串+=str(x)
如果x>停止:
返回字符串+=“,”
x=x-1
其他:
return\u string=“向上计数:”
当x使用此选项时:

def counter(start, stop):
x = start
if start > stop:
    return_string = "Counting down: "
    while x >= stop:
        return_string += str(x)
        x = x-1
        if x >= stop:
            return_string += ","
else:
    return_string = "Counting up: "
    while x <= stop:
        return_string += str(x)
        x = x + 1
        if x <= stop:
            return_string += ","
return return_string
def计数器(启动、停止):
x=开始
如果开始>停止:
return\u string=“倒计时:”
当x>=停止时:
返回字符串+=str(x)
x=x-1
如果x>=停止:
返回字符串+=“,”
其他:
return\u string=“向上计数:”
当x
def计数器(启动、停止)时:
x=开始
如果开始>停止:
return\u string=“倒计时:”
当x>=停止时:
返回字符串+=str(x)
x=x-1
如果x>=停止:
返回字符串+=“,”
其他:
return\u string=“向上计数:”
而x这里有一个:

def counter(start, stop):
    x = start
    if start>stop:

        return_string = "\"Counting down: "
        while x >= stop:
            return_string += str(x)
            x=x-1
            if x>=stop:
                return_string += ","
        return_string += '"'
    else:
        return_string = "\"Counting up: "
        while x <= stop:
            return_string += str(x)
            x=x+1
            if x<=stop:
                return_string += ","
        return_string += '"'
    return return_string
def计数器(启动、停止):
x=开始
如果开始>停止:
return\u string=“\”倒计时:
当x>=停止时:
返回字符串+=str(x)
x=x-1
如果x>=停止:
返回字符串+=“,”
返回字符串+=''“'
其他:
return\u string=“\”向上计数:

而x您可以在这里使用此代码。 这将打印不带尾随逗号的结果

def counter(start, stop):
x = start
if x > stop:
    return_string = "Counting down: "
    while x >= stop:
        return_string += str(x)
        x = x-1
        if start != stop:
            return_string += ","
            return_string.rstrip(',')
else:
    return_string = "Counting up: "
    while x <= stop:
        return_string += str(x)
        x = x + 1
        if start != stop:
            return_string += ","
return return_string.rstrip(',')
def计数器(启动、停止):
x=开始
如果x>停止:
return\u string=“倒计时:”
当x>=停止时:
返回字符串+=str(x)
x=x-1
如果开始!=停止:
返回字符串+=“,”
返回_string.rstrip(',')
其他:
return\u string=“向上计数:”
当x
def计数器(启动、停止)时:
x=开始
如果开始>停止:
return\u string=“倒计时:”
当x>=停止时:
返回字符串+=str(x)
如果x!=停止:
返回字符串+=“,”
x-=1
其他:
return\u string=“向上计数:”

而x“每次向上或向下计数时都会添加额外的行”。每次在循环中打印时。您是否看到它们是相关的?只需删除函数中的
print
语句。您可能还希望
return_string.rstrip(','))
删除尾随逗号。虽然此代码段可能解决问题,但确实有助于提高文章质量。请记住,您是在为将来的读者回答问题,而这些人可能不知道您提出代码建议的原因。虽然此代码段可能解决问题,但确实有助于提高文章质量你的文章的质量。记住,你是在回答将来读者的问题,那些人可能不知道你的代码建议的原因。
def counter(start, stop):
    x = start
    if start>stop:

        return_string = "\"Counting down: "
        while x >= stop:
            return_string += str(x)
            x=x-1
            if x>=stop:
                return_string += ","
        return_string += '"'
    else:
        return_string = "\"Counting up: "
        while x <= stop:
            return_string += str(x)
            x=x+1
            if x<=stop:
                return_string += ","
        return_string += '"'
    return return_string
def counter(start, stop):
x = start
if x > stop:
    return_string = "Counting down: "
    while x >= stop:
        return_string += str(x)
        x = x-1
        if start != stop:
            return_string += ","
            return_string.rstrip(',')
else:
    return_string = "Counting up: "
    while x <= stop:
        return_string += str(x)
        x = x + 1
        if start != stop:
            return_string += ","
return return_string.rstrip(',')
def counter(start, stop):
x = start
if start > stop:
    return_string = "Counting down: "
    while x >= stop:
        return_string += str(x)
        if x != stop :
            return_string += ","
        x -= 1
else:
    return_string = "Counting up: "
    while x <= stop:
        return_string += str(x)
        if x != stop:
            return_string += ","
        x += 1
return return_string

print(counter(1, 10)) # Should be "Counting up: 1,2,3,4,5,6,7,8,9,10"
print(counter(2, 1)) # Should be "Counting down: 2,1"
print(counter(5, 5)) # Should be "Counting up: 5"