python循环语句打印矩形_Python中使用循环语句打印三角形、菱形

前言:在学习开发语言循环语句的使用过程中,经常会打印各种形状来验证对循环语句的熟练掌握程度,接下来就使用python来打印多种形状练习。

如下示例中:变量i用于控制外层循环(图形行数),j用于控制空格的个数,k用于控制星号(*)的个数

1. 打印三角形

1.1 打印直角三角形

#/usr/bin/python

rows = int(raw_input(‘please input a rows:‘))

i=j=k=1

if rows >= 3:for i in range(0,rows+1):for k inrange(0,i):print ‘*‘, # 注意这里的",",一定不能省略,可以起到不换行的作用

k= k+1

print ‘\n‘i= i+1

else:print (‘Please enter a number that greater than or equal to 3,thank you!‘)

1.2 打印空心等边三角形

#/usr/bin/python

rows = int(raw_input(‘please input a rows:‘))for i inrange(0,rows):for j in range(0,rows-i-1):print " ",

j+= 1

for k in range(0,2*i+1):if k == 0 or k == 2*i:print "*",else:if i+1==rows and k%2==0:print "*",else:print " ",

k+= 1

print "\n"i+= 1

2. 打印菱形

2.1 打印实心菱形

#/usr/bin/python

rows = int(raw_input(‘please input a rows that rather than 2 :‘))for i inrange(0,rows):for j in range(0,rows-(i+1)):print " ",

j+= 1

for k in range(0,(rows-1)*i+1):if k>=2*i+1:print " ",else:print "*",

k+= 1

print "\n"i+= 1

for i in range(0,rows-1):for j in range(0,i+1):print " ",

j+= 1

for k in range(0,2*((rows-1)-i)-1):print "*",

k+= 1

print "\n"i+= 1

2.2 打印空心菱形

# 打印空心菱形先打印上半部分rows行,在打印下半部分rows-1行

#/usr/bin/python

rows = int(raw_input(‘please input a rows:‘))for i inrange(0,rows):for j in range(0,rows-(i+1)):print " ",

j+= 1

for k in range(0,(rows-1)*i+1):if k == 0 or k == 2*i:print "*",else:print " ",

k+= 1

print "\n"i+= 1

for i in range(0,rows-1):for j in range(0,i+1):print " ",

j+= 1

for k in range(0,2*((rows-1)-i)-1):if k == 0 or k==2*((rows-1)-i)-2:print "*",else:print " ",

k+= 1

print "\n"i+= 1

# 网上也有些朋友先打印上半部分rows-1行,然后打印下半部分rows行

#/usr/bin/python

rows = int(raw_input(‘please input a rows:‘))for i inrange(0,rows):for j in range(0,rows-i):print " ",

j+= 1

for k in range(0,2*i-1):if k == 0 or k == 2*i-2:print "*",else:print " ",

k+= 1

print "\n"i+= 1

for i inrange(0,rows):for j inrange(0,i):print " ",

j+= 1

for k in range(0,2*(rows-i)-1):if k == 0 or k == 2*(rows-i)-2:print "*",else:print " ",

k+= 1

print "\n"i+= 1

原文地址:http://www.cnblogs.com/secdata/p/7362080.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值