删除线格式 @贾学编程之python 循环

用嵌套for循环显示金字塔模式的数字

一、前言
本章介绍的内容为《全国计算机等级考试二级教程python语言程序设计》(2018版)
第5章
第21题

二、各个方案及解题时间顺序
从2021-12-31开始到2022-1-11日成功。一共形成了6个方案

题内容如下图

python用while打印数字金字塔 python输出数字金字塔1 121 12321_mac系统

2022-1-11第6方案得到结果如下图

2022-1-11针对第5次方案的再一次尝试,感兴趣的可以往下看有各个方案的结果。我突发奇想的修改了第4行for循环的起始数变成了1.输出后成功了。但是整个的排列并不好看

python用while打印数字金字塔 python输出数字金字塔1 121 12321_python_02

然后我想起了format这个功能。说实话我从开始有些恐惧到通过这次解题逐渐的喜欢上了这个功能,当然专业人士不一定管他叫功能,经过对n和j的循环内容进行format化后就得到了今天大家在下面看到的结果

python用while打印数字金字塔 python输出数字金字塔1 121 12321_字符串_03

上图分别用了powershell和pycharm软件自身的运行来显示结果。最终输出请一定用cmd或者powershell ,软件自带的真的是要超级吐槽一下。另外win和mac输出的效果区别太大。这个有机会再探讨

总结就是不要放弃。这次我没有从第1章重新来。而是继续啃硬骨头往前攻,因为是第一次攻克到了这里。还没有什么太深的理解。这需要等以后的理解了。非常感谢。我会继续前进的。下面是我的一些简单总结,和其他方案与结果的演示。希望大家多多关注

对循环打印数字序列理解的错觉

个人感觉:数字如何循环

  • 循环的结果不等于字符串输出
  • 很多朋友的错觉是每次当循环进行的时候它是打印的数列。
其他方案和其结果的展示

方案一 2022-1-4出现右侧但不是从1开始

python用while打印数字金字塔 python输出数字金字塔1 121 12321_mac系统_04

方案二 2022-1-4 左右侧都有了但还是没有从1开始。而且第一行前还出现了空行

python用while打印数字金字塔 python输出数字金字塔1 121 12321_python_05

方案3 2022-1-5 该方案成功的解决了方案2中左右同时双行的问题。接下来 准备解决如何从1开始(2021-1-5)

python用while打印数字金字塔 python输出数字金字塔1 121 12321_python_06

方案4 2022-1-5 再次的尝试

python用while打印数字金字塔 python输出数字金字塔1 121 12321_for循环_07

方案5 2022-1-7 胜利的曙光

python用while打印数字金字塔 python输出数字金字塔1 121 12321_python_08

当时在mac系统上。我不敢相信自己成功了。所以就进行了再次的尝试。但是怀疑mac系统的显示不正确。终于在win得到了验证。这个就是结果。MAC偏差的不是太大