python 用数字绘制半三角形

标签 python python-3.x

我正在尝试获得此输出(带逗号):

1
2, 1
3, 2, 1
4, 3, 2, 1
5, 4, 3, 2, 1

问题是,我无法“删除”每行数字 1 旁边的最后一个逗号 (,)。这是代码:

for i in range(1,6):
for x in range(i,0,-1):
    print("%i,"%(x), end=" ")
print()

最佳答案

您可以通过使用str.join来实现它与 rangemap :

>>> n = 5
>>> for i in range(n):
...     print(', '.join(map(str, range(i+1, 0, -1))))
...
1
2, 1
3, 2, 1
4, 3, 2, 1
5, 4, 3, 2, 1

如果您正在寻找一种衬垫解决方案,那么您可以使用嵌套 str.join 来编写它。如:

>>> print('\n'.join(', '.join(map(str, range(i+1, 0, -1))) for i in range(n)))
1
2, 1
3, 2, 1
4, 3, 2, 1
5, 4, 3, 2, 1

其中n是需要打印的行数。

关于python 用数字绘制半三角形,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41946392/

相关文章:

python - Django - 在模型中存储未转义的 html

python-3.x - 如何点击 Selenium + Python 无法滚动到 View 的链接?

python - 如何在自定义页面 Django 中使用管理表单

python - 是否可以在创建 Pydantic BaseModel 属性后对其进行修改?

html - 在 HTML 表格中,如何使用 python 在 jupyter notebook 中的绘图旁边添加文本?

python - 在编辑之前使用 python 脚本将 Windows 注册表备份到文件

python - 为什么单次加法比单次加法加单次赋值花费的时间更长?

python - 在Python pandas中,有没有办法提高数据帧到字典转换的速度?

python - 使用 glob 排除子文件夹

python - 将正数/负数四舍五入到最接近的 "whole"数字