首頁 >後端開發 >Python教學 >python如何列印出菱形與三角形以及矩形的程式碼範例分享

python如何列印出菱形與三角形以及矩形的程式碼範例分享

黄舟
黄舟原創
2017-08-08 10:52:283349瀏覽

最近在開發中遇到一個問題,需要利用python實現菱形、三角形以及矩形等形狀,發現網上這方面的資料較少,所以總結分享下,這篇文章主要給大家介紹了關於利用python打印出菱形、三角形以及長方形的相關資料,需要的朋友可以參考借鑒,下面來一起看看吧。

前言

本文主要為大家介紹了關於利用python列印出菱形、三角形以及矩形的相關內容,分享出來供大家參考學習,話不多說,來一起看看詳細的介紹:

實例程式碼


#coding:utf-8
rows = int(raw_input('输入列数: '))
i = j = k = 1 #声明变量,i用于控制外层循环(图形行数),j用于控制空格的个数,k用于控制*的个数
#等腰直角三角形1
print "等腰直角三角形1"
for i in range(0, rows):
 for k in range(0, rows - i):
  print " * ", #注意这里的",",一定不能省略,可以起到不换行的作用
  k += 1
 i += 1
 print "\n"
 
#打印实心等边三角形
print "打印空心等边三角形,这里去掉if-else条件判断就是实心的"
for i in range(0, rows + 1):#变量i控制行数
 for j in range(0, rows - i):#(1,rows-i)
  print " ",
  j += 1
 for k in range(0, 2 * i - 1):#(1,2*i)
  if k == 0 or k == 2 * i - 2 or i == rows:
   if i == rows:
    if k % 2 == 0:#因为第一个数是从0开始的,所以要是偶数打印*,奇数打印空格
     print "*",
    else:
     print " ", #注意这里的",",一定不能省略,可以起到不换行的作用
   else:
    print "*",
  else:
   print " ",
  k += 1
 print "\n"
 i += 1
 
#打印菱形
print "打印空心等菱形,这里去掉if-else条件判断就是实心的"
for i in range(rows):#变量i控制行数
 for j in range(rows - i):#(1,rows-i)
  print " ",
  j += 1
 for k in range(2 * i - 1):#(1,2*i)
  if k == 0 or k == 2 * i - 2:
   print "*",
  else:
   print " ",
  k += 1
 print "\n"
 i += 1
 #菱形的下半部分
for i in range(rows):
 for j in range(i):#(1,rows-i)
  print " ",
  j += 1
 for k in range(2 * (rows - i) - 1):#(1,2*i)
  if k == 0 or k == 2 * (rows - i) - 2:
   print "*",
  else:
   print " ",
  k += 1
 print "\n"
 i += 1
#实心正方形
print "实心正方形"
for i in range(0, rows):
 for k in range(0, rows):
  print " * ", #注意这里的",",一定不能省略,可以起到不换行的作用
  k += 1
 i += 1
 print "\n"
 
#空心正方形
print "空心正方形"
for i in range(0, rows):
 for k in range(0, rows):
  if i != 0 and i != rows - 1:
   if k == 0 or k == rows - 1:
    #由于视觉效果看起来更像正方形,所以这里*两侧加了空格,增大距离
    print " * ", #注意这里的",",一定不能省略,可以起到不换行的作用
   else:
     print " ", #该处有三个空格
  else:
   print " * ", #这里*两侧加了空格
  k += 1
 i += 1
 print "\n"

執行輸出結果:


输入列数: 4
等腰直角三角形1
 * * * * 

 * * * 

 * * 

 * 

打印空心等边三角形,这里去掉if-else条件判断就是实心的
  

  * 

 * * 

 *  * 

* * * * 

打印空心等菱形,这里去掉if-else条件判断就是实心的
  

  * 

 * * 

 *  * 

*   * 

 *  * 

 * * 

  * 

实心正方形
 * * * * 

 * * * * 

 * * * * 

 * * * * 

空心正方形
 * * * * 

 *   * 

 *   * 

 * * * *

總結

######################################################################

以上是python如何列印出菱形與三角形以及矩形的程式碼範例分享的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn