Python 如何输出每行有N,N-1,…,1个字符的N行
目前正在学习python,但遇到了一个问题:如何让它做到这一点?下面的例子就是问题所在Python 如何输出每行有N,N-1,…,1个字符的N行,python,Python,目前正在学习python,但遇到了一个问题:如何让它做到这一点?下面的例子就是问题所在 Number of lines: 5 *User inputs number* xxxxx xxxx xxx xx x *Then it prints any number of 'x' backwards. 所以它会倒数你输入的数字,例如,如果是5,它会显示5'x,然后倒数。它还需要用户输入任何数字,然后执行该操作。这应该是您想要的: from __future__ import print_f
Number of lines: 5 *User inputs number*
xxxxx
xxxx
xxx
xx
x *Then it prints any number of 'x' backwards.
所以它会倒数你输入的数字,例如,如果是5,它会显示5'x,然后倒数。它还需要用户输入任何数字,然后执行该操作。这应该是您想要的:
from __future__ import print_function
num = int(input("Number of lines: ")) # Use raw_input() on Python 2
for count in range(num, 0, -1):
print('x' * count)
print()
演示:
可以使用for循环按降序在某个范围内迭代:
n = int(input("Number of lines: "))
for i in range(n, 0, -1):
print('x' * i)
如果您使用的是Python 2,则应将input()
替换为raw\u input()
作为替代方案,您可以按升序生成“x”序列,然后在输出之前反转它们
n = int(input("Number of lines: "))
print(*reversed(['x' * i for i in range(1, n+1)]), sep='\n')
不清楚你在问什么。啊,你想从用户那里得到一个数字,而不是打印
num
x,然后是num-1
x,等等?对不起,我说得不够清楚。希望编辑帮助在这里发布作业之前,您是否尝试做自己的家庭作业?是的,先生,我尝试过,但我只是在学习,希望您能提供帮助。只是得到一个语法错误:无效语法OK,您使用的是Python 3,其中print
是一个函数。我已经更新了答案。TypeError:“str”对象不能被解释为整数。我如何去掉空格?@thepusshipper,您在示例输出中有空格,但如果您不需要,请去掉最后一个空的print()
@thepusshipper,您应该投票选出所有好的答案,包括但不限于被接受的答案。编辑后,这是一种非常好的方式。
n = int(input("Number of lines: "))
print(*reversed(['x' * i for i in range(1, n+1)]), sep='\n')