k5998800 发表于 2021-1-24 12:41:34

P5改进我们的小游戏 动动手 2

temp = input("请输入一个整数:")
i = int(temp)
while i > 0:
    j = i - 1
    print(" " * j)
    print("*" * i)
    print("\n")
    i = i - 1
为什么这个样子输出的前面没有空格呀?就完全和下面的代码输得的结果一样:
temp = input("请输入一个整数:")
i = int(temp)
while i > 0:
    print("*" * i)
    print("\n")
    i = i - 1

Twilight6 发表于 2021-1-24 12:56:40


因为 print 函数自带换行,即 end 参数默认值为 '\n' 换行符

你第一个代码 print(" " * j) 是打印了空格,但是自动换行了在打印 print("*" * i) 此时这行前面自然没有空格

将 end 参数重新赋值为 空字符串,就不会自动换行了~

参考代码:

temp = input("请输入一个整数:")
i = int(temp)
while i > 0:
    j = i - 1
    print(" " * j,end='')
    print("*" * i)
    i = i - 1

temp = input("请输入一个整数:")
i = int(temp)
while i > 0:
    print(" "*(i-1)+"*" * i)
    i = i - 1

页: [1]
查看完整版本: P5改进我们的小游戏 动动手 2