Python打印“菱形”星号代码方法

yipeiwu_com5年前Python基础

本人是一名python初学者,刚刚看到一道有趣的python问题,“用python如何在编译器中打印出菱形图案?”
因此决定尝试一下,代码不多,仅供参考。

代码

def printStar(intNum):
  s = "*"
  spaceLength = intNum
  blockCount = int(intNum/2+1)

  for i in range(spaceLength):
    result = s.rjust(blockCount)
    if i >= int(spaceLength/2):
      print(result)
      s = s[2:]
      blockCount -= 1
    else:
      print(result)
      s = s+(2*"*")
      blockCount += 1

def oddOReven(intNum):

  if intNum%2 == 0:
    print("please input a odd num data")
  else: 
    printStar(intNum)

if __name__ == '__main__':
  
  while True:
    try:
      intNum = eval(input("please input a odd num data\n"))
      oddOReven(intNum)
    except BaseException as e:
      print("Please input as 1/2/3... Errorcode:%s" % e) 
      

运行结果:

相关文章

Python浅复制中对象生存周期实例分析

本文实例讲述了Python浅复制中对象生存周期。分享给大家供大家参考,具体如下: Python的浅复制以及深复制我了解的并不多,我不清楚shutil中的copy1和copy2是不是算是浅...

对PyQt5中的菜单栏和工具栏实例详解

对PyQt5中的菜单栏和工具栏实例详解

在这一部分,我们学习创建状态栏,菜单栏和工具栏。一个菜单是位于菜单栏的一组命令。一个工具栏有一些按钮,这些按钮在应用程序中拥有一些常用命令。状态栏显示状态信息,通常位于应用窗口下方。 Q...

详解Python数据可视化编程 - 词云生成并保存(jieba+WordCloud)

详解Python数据可视化编程 - 词云生成并保存(jieba+WordCloud)

 思维导图: 效果(语句版): 源码: # -*- coding: utf-8 -*- """ Created on Tue Mar 5 17:59:29 2019 @...

Python中交换两个元素的实现方法

Python既具有普通程序开发语言的特点,也具有Matlab语言用于数值计算的特点,,当然了数值计算是由其其强大的第三方库numpy实现的,矩阵在python中数据类型是ndarray,...

Python实现字典按key或者value进行排序操作示例【sorted】

本文实例讲述了Python实现字典按key或者value进行排序操作。分享给大家供大家参考,具体如下: 要点:使用到了python的内建函数与lambda函数 代码如下:(可直接复制运行...