当前位置: 首页 > news >正文

Python3 打印菱形 使用abs()的方法 最少的代码搞定

核心代码就是print(" "*abs(4-n), "*"*(2*(4-abs(4-n))-1)),需要先确定当前行空格个数,再确定*符号的个数。

'''------------------------------------------------------
【程序设计】
---------------------------------------------------------

题目:编写编写函数fun,其功能为打印如下图所示图形。
   *
  ***
 *****
*******      
 *****
  ***
   *
要求:要求使用abs()。
      编写函数中包含输出语句,直接打印表达式的结果。

---------------------------------------------------------
注意:部分源程序给出如下。请勿改动主函数main和其它函数中的
      任何内容,仅在函数的注释标志之间填入所编写的若干语句。
------------------------------------------------------'''


def fun(n):
    # **********Program**********
    print(" "*abs(4-n), "*"*(2*(4-abs(4-n))-1))
    # **********  End  **********


def main():
    for index in range(1, 8):
        fun(index)


if __name__ == '__main__':
    main()

如果觉得上面的方法复杂,可以使用下面方法7行菱形

for i in range(-3, 4):
        j = abs(i)
        #先是j个空格,然后打印(7-2j)个* ,后面的都是空格
        print(' '*j+'*'*(7-2*j))

如果是9行

for i in range(-4,5):
    j = abs(i)
    #先是j个空格,然后打印(9-2j)个* ,后面的都是空格
    print(' '*j+'*'*(9-2*j))   

参考:
使用Python打印一些图形,主要是找到循环规律 - Wily的博客 - CSDN博客
python打印菱形和对顶三角形 - chen的博客 - CSDN博客

打赏

相关文章:

  • idea mac xml注释快捷键
  • spring教程
  • ModuleNotFoundError: No module named ‘kamene‘
  • 解决Ubuntu安装VMware后 无法ping通虚拟机的Win7
  • Mac/Linux/Ubuntu下 视频 显示双语/中英字幕 的方法
  • 如何将chrome浏览器中隐藏的扩展显示出来 恢复扩展
  • Windows XP系统中 设置DPI缩放 字体大小的简单方法
  • 谷歌adsense自动广告 没效果 不显示不行 的原因
  • access的立即窗口在哪里 怎么打开access的 立即窗口
  • Access数据库 找不到使用控件向导的位置 的解决方法
  • rapid-framework的使用
  • idea mac 搜索项目所有文件的内容
  • SpringMVC新手教程
  • Windows XP系统 删除文件不显示确认对话框 的设置
  • Ubuntu18.04 安装nixnote2 使用Linux版本印象笔记
  • (三)从jvm层面了解线程的启动和停止
  • 【从零开始安装kubernetes-1.7.3】2.flannel、docker以及Harbor的配置以及作用
  • CAP 一致性协议及应用解析
  • conda常用的命令
  • Date型的使用
  • ES学习笔记(10)--ES6中的函数和数组补漏
  • Linux后台研发超实用命令总结
  • Markdown 语法简单说明
  • Next.js之基础概念(二)
  • niucms就是以城市为分割单位,在上面 小区/乡村/同城论坛+58+团购
  • php ci框架整合银盛支付
  • Python3爬取英雄联盟英雄皮肤大图
  • vue.js框架原理浅析
  • webpack项目中使用grunt监听文件变动自动打包编译
  • 阿里云应用高可用服务公测发布
  • 百度小程序遇到的问题
  • 从tcpdump抓包看TCP/IP协议
  • 从零开始的无人驾驶 1
  • 排序算法之--选择排序
  • 在Mac OS X上安装 Ruby运行环境
  • 【运维趟坑回忆录 开篇】初入初创, 一脸懵
  • #QT(智能家居界面-界面切换)
  • $refs 、$nextTic、动态组件、name的使用
  • (01)ORB-SLAM2源码无死角解析-(56) 闭环线程→计算Sim3:理论推导(1)求解s,t
  • (03)光刻——半导体电路的绘制
  • (2020)Java后端开发----(面试题和笔试题)
  • (2024.6.23)最新版MAVEN的安装和配置教程(超详细)
  • (C#)Windows Shell 外壳编程系列9 - QueryInfo 扩展提示
  • (C语言版)链表(三)——实现双向链表创建、删除、插入、释放内存等简单操作...
  • (done) NLP “bag-of-words“ 方法 (带有二元分类和多元分类两个例子)词袋模型、BoW
  • (PySpark)RDD实验实战——取最大数出现的次数
  • (二)Pytorch快速搭建神经网络模型实现气温预测回归(代码+详细注解)
  • (回溯) LeetCode 131. 分割回文串
  • (十一)手动添加用户和文件的特殊权限
  • (四)【Jmeter】 JMeter的界面布局与组件概述
  • (一)appium-desktop定位元素原理
  • .Net - 类的介绍
  • .NET LINQ 通常分 Syntax Query 和Syntax Method
  • .Net 知识杂记
  • .Net实现SCrypt Hash加密