python while循环打印菱形_如何使用python中的while循环生成未填充的菱形

def diamond(size, sym_func):

s = ''

for row in xrange(size):

for column in xrange(size):

if row > size//2: # if bottom half reflect top

row = size - row - 1

if column > size//2: # if right half reflect left

column = size - column - 1

s += sym_func(row,column,size)

s+= '\n'

return s

def solid(row,column,size):

if column >= (size // 2 - row):

return "*"

return " "

def hollow(row,column,size):

if column == (size // 2 - row):

return "*"

return " "

def circle(row,column,size):

if (size//2-row)**2+(size//2-column)**2 <= (size//2)**2:

return '*'

return ' '

print diamond(size=7, sym_func=solid) # The size of the diamond

print diamond(size=7, sym_func=hollow) # The size of the diamond

print diamond(size=17, sym_func=circle) # The size of the diamond

看看空心和实心符号函数之间的区别,如果你用a&gt;=那么你会得到一个实心的东西如果你用a==来进行精确的比较,那么它就是最简单的

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值