Python:在函数中加倍变量

时间:2015-03-17 06:07:22

标签: python function


    def lb(a):
    while a != 0:
        a = a - 1
        print('\n')

print('1 line break')
lb(1)
print('2 line breaks')
lb(2)
print('3 line breaks')
lb(3)
print('done')

当我运行此代码时,它需要打破的行数加倍, 所以输出:
print('1 line break')
lb(1)
print('2 line breaks')
lb(2)
print('3 line breaks')
lb(3)
print('done')
如何让它打印出适量的换行符?

3 个答案:

答案 0 :(得分:3)

打印会添加一个' \ n'自动

def lb(a):
    print '\n'*(a-1)

答案 1 :(得分:1)

在Python print中,除非明确告知不要,否则会在结尾处自动添加换行符。这意味着您的函数将打印两次换行次数,因为

print('\n')

打印两个换行符,一个在字符串中,另一个在最后自动添加。

一个简单的解决方案是使用print()代替。

答案 2 :(得分:0)

def lb(x):
    for i in range(x):
        print ''

快速而肮脏。不是那么pythonic,但它对我来说足够好。仍然可以使用范围与xrange进行比较,但这可以完成工作。