如何在 Python 中打印图案

2024 年 8 月 29 日 | 阅读 17 分钟

在 Python 中,for 循环用于打印各种图案。打印各种图案是在面试中最常见的编程问题。多个 for 循环用于打印图案,其中第一个外部循环用于打印行数,内部循环用于打印列数。大多数图案都使用以下概念。

  • 外部循环用于打印行数。
  • 内部循环用于打印列数。
  • 用于根据 Python 中所需位置打印空格的变量。

在本教程中,我们将讨论一些常见的图案。

在 Python 中打印金字塔、星形和菱形图案

在本节中,我们将学习常见的金字塔图案。

图案 - 1:简单金字塔图案

示例 -

输出

Enter the number of rows: 5
* 
* * 
* * * 
* * * * 
* * * * *

说明

在上面的代码中,我们初始化了 n 变量来输入图案的行数。我们输入 n = 5,外部 for 循环的范围是 0 到 4。

  • 内部 for 循环的迭代取决于外部循环。内部循环负责打印列数。
  • 在第一次迭代中,i 的值为 0,并且它增加了 1,所以它变成 0+1,现在内部循环迭代第一次并打印一个星号(*)。
  • 在第二次迭代中,i 的值为 1,并且它增加了 1,所以它变成 1+1,现在内部循环迭代两次并打印两个星号(*)。
  • end 参数可以防止换行。它会一直打印星号直到循环有效。
  • 最后的 print 语句负责在每行后结束该行。

图案 - 2:倒直角金字塔

示例 -

输出

Enter the number of rows: 5      
      * 
     * * 
    * * * 
   * * * * 
  * * * * *

图案 - 3:打印向下半金字塔

代码 -

输出

Enter the number of rows: 5
* * * * *  
* * * *  
* * *  
* *  
*  

图案 - 4:打印三角形金字塔

代码 -

输出

Enter the number of rows: 10
                  *   
                 *  *   
                *  *  *   
               *  *  *  *   
              *  *  *  *  *   
             *  *  *  *  *  *   
            *  *  *  *  *  *  *   
           *  *  *  *  *  *  *  *   
          *  *  *  *  *  *  *  *  *   
         *  *  *  *  *  *  *  *  *  *   

图案 - 5:向下三角形图案

代码 -

输出

                  * * * * * * * * * * * 
                   * * * * * * * * * * 
                    * * * * * * * * * 
                     * * * * * * * * 
                      * * * * * * * 
                       * * * * * * 
                        * * * * * 
                         * * * * 
                          * * * 
                           * * 
                            *

图案 - 6:菱形图案

代码 -

输出

Enter the number of rows: 8
              * 
             * * 
            * * * 
           * * * * 
          * * * * * 
         * * * * * * 
        * * * * * * * 
       * * * * * * * * 
      * * * * * * * * * 
       * * * * * * * * 
        * * * * * * * 
         * * * * * * 
          * * * * * 
           * * * * 
            * * * 
             * * 
              *

图案 - 7:在一个图案中打印两个金字塔

代码 -

输出

Enter the number of rows: 7
*  
* *  
* * *  
* * * *  
* * * * *  
* * * * * *  
* * * * * * *  
* * * * * * *  
* * * * * *  
* * * * *  
* * * *  
* * *  
* *  
*

图案 - 8:沙漏形图案

代码 -

输出

Enter the number of rows: 5
   * * * * * * 
    * * * * * 
     * * * * 
      * * * 
       * * 
        * 
        * 
       * * 
      * * * 
     * * * * 
   * * * * * 
  * * * * * *

我们已经讨论了使用 for 循环的基本金字塔图案。图案的概念取决于逻辑和 for 循环的正确使用。

Python 中的数字图案

在本节中,我们将描述几种不同类型的数字图案程序。让我们一一理解以下图案。

图案 - 1:数字图案

代码 -

输出

Enter the number of rows: 5
1  
2 2  
3 3 3  
4 4 4 4  
5 5 5 5 5  

解释 -

在上面的代码中,我们根据行数打印了数字。第一行打印单个数字。接下来,第二行打印两个数字,第三行打印三个数字,依此类推。在

图案 - 2:带有数字的半金字塔图案

代码 -

输出

Enter the number of rows: 5
1 
1 2 
1 2 3 
1 2 3 4 
1 2 3 4 5

在上面的代码中,我们在内部 for 循环中打印了列值 j。

图案 - 3:倒金字塔图案

代码 -

输出

Enter the number of rows: 5
1 1 1 1 1 
2 2 2 2 
3 3 3 
4 4 
5

说明

在上面的代码中,我们使用了反向循环来打印向下倒金字塔,其中数字在每次迭代后减少。

图案 - 4:相同的数字倒金字塔

代码 -

输出

Enter the number of rows: 6
6 6 6 6 6 6 
6 6 6 6 6 
6 6 6 6 
6 6 6 
6 6 
6

图案 - 5:数字降序排列

代码 -

输出

Enter the number of rows: 6
6 6 6 6 6 6 
5 5 5 5 5 
4 4 4 4 
3 3 3 
2 2 
1

图案 - 6:打印 1 到 10 的数字图案

代码 -

输出

1 
2 3 4 
5 6 7 8 9

图案 - 7:从 10 到 1 的倒序图案

代码 -

输出

Enter the number of rows: 6
6 5 4 3 2 1 
5 4 3 2 1 
4 3 2 1 
3 2 1 
2 1 
1

图案 - 8:打印奇数

代码 -

输出

Enter the number of rows: 5
1 
3 3 
5 5 5 
7 7 7 7 
9 9 9 9 9

图案 - 9:使用数字的方块图案

代码 -

输出

Enter the number of rows: 5
1 2 3 4 5 
2 2 3 4 5 
3 3 3 4 5 
4 4 4 4 5 
5 5 5 5 5

图案 - 10:列中的乘法数字

示例

输出

Enter the number of rows: 8
1  
2  4  
3  6  9  
4  8  12  16  
5  10  15  20  25  
6  12  18  24  30  36  
7  14  21  28  35  42  49  

在上一节中,我们讨论了所有基本的数字图案。这将使您对 Python for 循环有更强的掌握。我们可以使用 for 循环打印任何类型的图案。

Python 中的字母和字符图案

我们知道,每个字母都有其自己的 ASCII 值,因此定义一个字符并将其打印到屏幕上。让我们通过以下示例来理解这些图案

图案 - 1:带字符的直角图案

代码 -

输出

The character pattern using the ascii value is: 
A 
B C 
D E F 
G H I J 
K L M N O

解释 -

在上面的代码中,我们将整数值 65 分配给 **asciiValue** 变量,这是 A 的 ASCII 值。我们定义了 for 循环来打印五行。在内部循环体中,我们使用 char() 函数将 ASCII 值转换为字符。它将打印字母,并在每次迭代后增加 asciiValue。

图案 - 2:带相同字符的直角图案

代码 -

输出

The character pattern using the ascii value is: 
Enter the ASCII value to print pattern: 75
K 
K K 
K K K 
K K K K 
K K K K K

图案 - 3:在图案中显示单词中的字母

代码 -

输出

J
Ja
Jav
Java
JavaT
JavaTp
JavaTpo
JavaTpoi
JavaTpoin
JavaTpoint

我们可以使用任何单词来打印字符。

图案 - 5:带字符的等边三角形图案

代码 -

输出

Print equilateral triangle Pyramid with characters 
        A 
       B C 
      D E F 
     G H I J 
    K L M N O

在本文中,我们讨论了所有基本的图案程序。这些图案通常在面试中被问到,也有助于理解 Python for 循环的概念。一旦我们掌握了程序的逻辑,我们就可以使用 Python 循环打印任何图案。