python - 有没有办法用for循环打印这样的数字
问题描述
我想编写一个可以输出如下结果的代码:
123456
23456
3456
456
以及关于我想要多少层,我需要使用输入法,但我无法得到我想要的结果。
我试过这个:
layers = int(input('layers: '))
for i in range(1,layers+1):
for j in range(1,i+1):
print('123456',end ="")
print('')
我无法弄清楚我在哪里做错了,输出很奇怪。
解决方案
尝试这个。您可以向后迭代range
layers = int(input('layers: '))
for i in range(layers,0,-1):
print(' '*(layers-i),end='')
for j in range(1,i+1):
print(j,end ="")
print('')
推荐阅读
- c - 最小脚本 Dev-C++ 上的“未定义对‘WinMain’的引用”错误
- reactjs - 如何使用 AWS coginto auth sdk 刷新令牌
- git - Git回滚合并提交
- python - 我如何确保不同的最终用户在 PythonAnywhere 中同时访问我的程序时将他们的文件/程序状态保留给自己
- javascript - 在 for 循环 VueJS 中同步 API 调用
- reactjs - 协助 React useState hook 暂时为空/空数据
- java - 转换 2 个相同对象后抛出 Java ClassCastException
- html - PurgeCSS 错过了使用冒号的 Tailwind 类:
- c - 文件指针不能到文件末尾?
- python - Pandas:删除除第一个新出现值之外的行