python - 如何在python中反转for循环并从左到右打印元素
问题描述
这是我用python编写的代码
n = 5
row = 2 * n - 2
for i in range(n,-1,-1):
for j in range(row):
print(end="")
row -=2
for k in range(i+1):
print('*',end=" ")
print()
得到的输出是这个
* * * * *
* * * *
* * *
* *
*
例如,我想从左到右顺序打印这个开始
预期的输出是: -
* * * * *
* * * *
* * *
* *
*
如果有任何可能的方式从左到右打印元素,因为在我的大部分程序中,我需要我正在搜索的逻辑,请帮助我,即使我使用了循环的反转函数,它也会反转循环,但我不是得到我所期望的
解决方案
n = 5
print(*[' '.join(' '*i + '*'*(n-i)) for i in range(n)], sep='\n')
输出:
* * * * *
* * * *
* * *
* *
*
解释:
for i in range(n):
chars = ' '*i + '*'*(n-i) # creating list of (i) spaces followed
# by (n-i) stars to finish a line of n elements
print(' '.join(chars)) # join prepared values with spaces
推荐阅读
- css - 水平堆叠时间线的一致左边距百分比间距
- excel - 在excel中复制最近/最后一张表
- docker - QEMU 客户机上的 Docker 容器没有 LAN 连接
- r - 从 R 表在 Excel 工作簿中创建多个工作表?[使用 xlsx 包]
- reactjs - 如何在反应中使用axios发布标题
- c - GCC 自动对变量和代码段进行分组
- r - 在R中的单词模式之后获取一个数字
- excel - 如何使用vba使用公式将单元格内容插入图表文本框
- python - 如何为 seaborn FacetGrid 和图形级 xtick 标签设置旋转
- powershell - PowerShell 中 PowerBI RestAPI 中的错误处理