用Python输出数字金字塔(详细版)!

经典数字金字塔合集——python解法 经典数字金字塔合集 阅读详情
AI摘要

本文介绍了使用Python输出数字金字塔的方法。先明确目标和结构分析,接着阐述编写思路,包括循环控制行数、输出空格和数字、控制换行等。还给出补充形式,最后提供了Python学习资料,如学习路线、视频、实战案例、面试资料和副业路线等。

使用Python输出数字金字塔
  • 一、目标
  • 二、分析
  • 三、编写思路
    • 1、循环控制当前行数
    • 2、输出空格
    • 3、输出数字
    • 4、控制换行
  • 四、补充
  • 完整代码

一、目标

生成如下格式的数字金字塔

    1
   121
  12321
 1234321
123454321

二、分析

对结构进行分析,可知

  1. 共有前边空格和金字塔部分数字需要输出
  2. 数字部分为对称结构
  3. 每行数字最大值与当前行数一致
  4. 对称的一半占位数目与当前行数一致

三、编写思路

1、循环控制当前行数

使用循环控制当前行数,在其中输出每行相应内容

n = 5  # 这里是输出总行数
for i in range(1, n + 1):
	# 这里后续输出空格、数字

2、输出空格

由于空格在前,首先输出空格,每行空格补齐数字外的位置,因此
空格数=当前行数-数字个数

n = 5  # 这里是输出总行数
for i in range(1, n + 1):
    print(" " * (n - i), end="")
    # 后续输出数字

其中,end用于使每个print()函数不进行换行

3、输出数字

把数字分成两部分输出,左半部分从1数起,一直到最大值(当前行数),因此使用循环,控制其最大值即可。

n = 5  # 这里是输出总行数
for i in range(1, n + 1):
    print(" " * (n - i), end="")
    for j in range(1, i + 1):
        print(j, end="")

后半部分,为倒序,且从第二行才开始有输出,起始输出为_最大值-1_,倒数至1

n = 5  # 这里是输出总行数
for i in range(1, n + 1):
    print(" " * (n - i), end="")
    for j in range(1, i + 1):
        print(j, end="")
    if i > 1:
        for k in range(i - 1, 0, -1):
            print(k, end="")

4、控制换行

换行应为每行空格和数字全部输出结束时,因此在最外层循环内进行换行

n = 5  # 这里是输出总行数
for i in range(1, n + 1):
    print(" " * (n - i), end="")
    for j in range(1, i + 1):
        print(j, end="")
    if i > 1:
        for k in range(i - 1, 0, -1):
            print(k, end="")
    print()

以上为完整形式。

四、补充

此外,将前方空格变为两个,数字的结束符号变为空格,则能输出有空格间距的数字金字塔

n = 5  # 这里是输出总行数
for i in range(1, n + 1):
    print("  " * (n - i), end="")
    for j in range(1, i + 1):
        print(j, end=" ")
    if i > 1:
        for k in range(i - 1, 0, -1):
            print(k, end=" ")
    print()

结果如下

        1 
      1 2 1 
    1 2 3 2 1 
  1 2 3 4 3 2 1 
1 2 3 4 5 4 3 2 1 

完整代码

1、

n = 5  # 这里是输出总行数
for i in range(1, n + 1):
    print(" " * (n - i), end="")
    for j in range(1, i + 1):
        print(j, end="")
    if i > 1:
        for k in range(i - 1, 0, -1):
            print(k, end="")
    print()

对应输出

    1
   121
  12321
 1234321
123454321

2、

n = 5  # 这里是输出总行数
for i in range(1, n + 1):
    print("  " * (n - i), end="")
    for j in range(1, i + 1):
        print(j, end=" ")
    if i > 1:
        for k in range(i - 1, 0, -1):
            print(k, end=" ")
    print()

对应输出

        1 
      1 2 1 
    1 2 3 2 1 
  1 2 3 4 3 2 1 
1 2 3 4 5 4 3 2 1 

关于Python技术储备

学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后给大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

包括:Python激活码+安装包、Python web开发,Python爬虫,Python数据分析,人工智能、自动化办公等学习教程。带你从零基础系统性的学好Python!
点击领取 100%免费!

👉Python所有方向的学习路线👈

Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。(全套教程文末领取)

在这里插入图片描述

👉Python学习视频600合集👈

观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。

在这里插入图片描述

温馨提示:篇幅有限,已打包文件夹,获取方式在:文末
👉Python70个实战练手案例&源码👈

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

在这里插入图片描述

👉Python大厂面试资料👈

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

在这里插入图片描述

在这里插入图片描述

👉Python副业兼职路线&方法👈

学好 Python 不论是就业还是做副业赚钱都不错,但要学会兼职接单还是要有一个学习规划。

在这里插入图片描述

👉 这份完整版的Python全套学习资料已经上传,朋友们如果需要可以扫描下方优快云官方认证二维码或者点击链接免费领取【保证100%免费】

![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/711c5966aa7348dc9340894eea54e99f.png#pic_center在这里插入图片描述

Python 教程之控制流(6)打印金字塔图案的程序 关注与私信博主(08)学习更多Python知识与技巧,课件,源码,安装包,还有最新大厂面试资料等等等。然后,在第 1 行上,我们打印 4 次空格(即 5-1 或 height -row)然后,在第 2 行上,我们打印空白 3 次(即 5-2 或 height -row)操作打印语句,可以打印不同的数字图案、字母图案或星形图案。可以使用简单的 for 循环在 python 中打印模式。 阅读详情

相关推荐

Python编程:实现简单的数字金字塔

在每次循环内,我们使用print函数打印num变量的值,并以空格结尾,以防止数字之间出现换行符。数字金字塔是一种常见的数学问题,它由一个数字序列组成的三角形构成,其中每个数字都位于其下面两个数字的正上方。通过定义一个名为printNumTriangle的函数并将其调用,我们能够轻松地打印出不同大小的数字金字塔。首先,让我们定义一个函数来打印数字金字塔。该函数将接受一个整数N作为参数,N代表金字塔中最大数字的行数。正如我们所看到的那样,该函数成功地打印了一个数字金字塔,其中每一行都包含从1到N之间的数字。

code_welike的博客 6124

Python——数字金字塔

例 4-16使用 *号输出金字塔形状。 程序在第 i 行,每行打印(2i-1)个星号(*),在之前输出 n - i 个空格,n 是用户申请打印的行数。 #ex0416.py n = eval(input("请输入打印的行数:")) for i in range(1,n+1): print(' '*(n-i)+'*'*(2*i-1)) 运行结果: 例 4-17输出数字金字塔。 #ex0417.py n = eval(input("请输入打印的行数:")) for x in range(1,n+1)

XQC_KKK的博客 2万+

从零实现地震波场模拟:交错网格有限差分法核心代码精讲

本文详细介绍了从零实现地震波场模拟的核心技术,重点讲解了交错网格有限差分法的实现过程。通过速度-应力弹性波方程的离散化处理,结合代码实例演示了应力与速度更新的关键步骤,并分享了震源加载、稳定性条件等实用技巧,为计算地球物理学研究提供实践指导。

weixin_42556197的博客 410

【Python实现数字金字塔】

数字金字塔

平淡无奇的网瘾少女博客 5891

射频工程师必须了解的S参数四项要点

本文围绕单端 6 英寸走线的 S 参数展开深入分析,核心包含四项关键要点:低频下导线电学长度远小于信号波长,S11 呈大负分贝值、S21 接近 0 分贝;端口与走线的阻抗不匹配引发反射叠加,形成 S11 首个峰值(对应传输线四分之一波长频率);S21 相位可作为一致性检查依据,其 90° 相位差与 S11 峰值吻合;理想建模中 S11 峰值随频率上升因损耗下降,实际测量因连接器等阻抗不连续性,S11 会出现振荡上升。分析依托 Keysight ADS 工具与电磁求解器原理,为 S 参数解读提供科学支撑。

一只豌豆象的博客 1284

VASP计算层错能(SFE)全攻略2

本文介绍了使用VASP计算纯镍(Ni)层错能(SFE)的具体步骤。首先构建Ni的FCC单胞并扩展为超胞,通过修改原子位置引入堆垛层错;随后分别计算完美晶体和含层错结构的能量;最后通过能量差与层错面积之比求得SFE值。计算需注意k点网格、截断能和超胞尺寸的收敛性测试,并推荐使用PAW赝势和ASE等工具辅助结构构建。

weixin_50519490的博客 1986

输出数字金字塔(Python为例)

使用Python输出数字金字塔一、目标二、分析三、编写思路1、循环控制当前行数2、输出空格3、输出数字4、控制换行四、补充完整代码 一、目标 生成如下格式的数字金字塔 1 121 12321 1234321 123454321 二、分析 对结构进行分析,可知 共有前边空格和金字塔部分数字需要输出 数字部分为对称结构 每行数字最大值与当前行数一致 对称的一半占位数目与当前行数一致 三、编写思路 1、循环控制当前行数 使用循环控制当前行数,在其中输出每行相应内容 n = 5 # 这里

yeluoyeqiushui的博客 3万+

研究生课程笔记:软件包在流行病学中的应用(三)——STATA软件

关键词:STATA软件基本操作、STATA对于流行病学研究的实现、STATA对复杂抽样设计样本量计算的实现 一、STATA软件基本操作 这部分网上教程有很多,也可以直接根据stata自带的help功能进行自学,在此只记录课程中提及的功能项。 1. 变量编辑 1.1 赋值:label type(按精度区分) 1) 整型:int(32), short(16), long(32) 2) 实型:flo...

weixin_45463530的博客 2432

Python实验之——输出数字金字塔

1. 在金字塔模式中显示数字(编写一个嵌套 for 循环来显示下面的输出): 为了给同学们更好地指导实验,我得认真提前把题目做一遍。这个题目其实还是有点复杂的,想了一种比较简单的解法如下(代码小弱请勿嘲笑): for i in range (0,8): for j in range(7-i): print(" ",end=" ")#输出空格 for k in range(i+1): print(2**k,end=" ")#递增的数 k+=1

gtt683559的博客 1万+

SpringBoot Actuator未授权访问漏洞实战:从发现到利用

本文深入剖析了SpringBoot Actuator未授权访问漏洞的成因、危害与利用手法。文章详细演示了如何发现暴露的端点,并通过实战案例复现了从敏感信息泄露到利用反序列化漏洞实现远程代码执行(RCE)的全过程,为开发与运维人员提供了从漏洞发现到修复加固的完整安全指南。

weixin_29231221的博客 259

【全解析 | PTA】浙大版《Python 程序设计》题目集-第一章

Python浙大版PTA题解

wzhh_的博客 5526

python输出数字金字塔_python生成金字塔

人生苦短,我用python!本文将介绍三种使用python实现生成金字塔的方法,文末归纳了知识点。python版本:3.7.31. 方法一:普通printn= 10for i in range(n):a = n - ib = 2 * i + 1for j in range(a):print(' ', end='')for k in range(b):print('*',end='')print('...

weixin_39886251的博客 6910

右腿驱动电路设计:从共模干扰原理到生物电采集实战

在生物电信号采集领域,共模干扰是影响测量精度的核心挑战之一,其本质源于环境电磁场通过容性耦合在人体表面产生的感应电流。根据欧姆定律,由于人体组织阻抗的不均衡性,共模电流会在不同测量点产生差异化的压降,从而转化为难以滤除的差分噪声。为解决这一问题,右腿驱动技术应运而生,它通过负反馈原理主动抵消干扰,显著提升系统的共模抑制比。该技术广泛应用于心电图、脑电图等医疗电子设备中,是确保微弱生理信号质量的关键环节。本文结合工程实践,深入剖析了右腿驱动电路中的仪表放大器选型、反馈环路稳定性设计以及PCB布局布线要点,为高

weixin_31476015的博客 442

python输出数字金字塔_Python输出数字金字塔

原博文2019-10-25 19:47 −使用Python输出一个数字金字塔 运行结果: 源代码: ''' Python输出数字金字塔 ''' for x in range(1,10): print(' '*(15-x),end='') n=x while n>=1: print...05571相关推荐2019-09-28 21:13 −Python pytho...

weixin_39737224的博客 4441

mpv 源码深度解析:从 MPlayer 遗产到现代媒体播放器架构

做减法优于做加法:不值得维护的功能就移除(DVD 菜单、流缓存等)单线程事件驱动:核心逻辑在单线程中运行,通过 dispatch 队列处理并发分离关注点:demuxer 线程、VO 线程、脚本线程各司其职质量优先:使用 GPU 着色器而非固定功能硬件,默认软件解码(更可靠)可嵌入性:libmpv API 让 mpv 可以作为库嵌入其他应用mpv 是一个用纯 C 实现的、工程质量极高的媒体播放器。它的代码库展示了一个事实:C 语言完全可以通过良好的架构设计来实现复杂的多媒体系统。

世界那么大,我想去看看~【随心更新,看世界去了😄】 85

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

Python使用for循环打印金字塔

文章目录1. 正金字塔2. 倒金字塔3. 数字金字塔 1. 正金字塔 # 打印形状 # * *** ***** ******* ********* # 实现代码 # # 将金字塔看作一个由左边矩形、右边三角形组成的图形(拆分如下) # for i in range(a): # print('~'*(a - 1 - i) + '*'*(i + 1) + ' ' ...

林大夕可的博客 3万+

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

python输出数字金字塔_python中的数字金字塔

使用字符串格式,并且它适用于n>=1的任何值:num=int(raw_input())max_width=len(" ".join(map(str,range(num,0,-1)))+" ".join(map(str,range(2,num+1))))+1#max_width is the maximum width, i.e width of the last lineprint "{0:^{1...

weixin_39593718的博客 1650

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

python输出数字金字塔_java如何编写数字金字塔

/*Java*Author: NealFeng at oschina.net*License: GPLv2+*Time: 2014/1/17**在控制台输出数字金字塔:* 1* 1 2 1* 1 2 4 2 1* 1 2 4 8 4 2 1* 1 ...

weixin_39703773的博客 564

python写金字塔(数字金字塔)

用python写金字塔(数字金字塔) 提示用户输入一个1-15间的整数,然后显示一个如上所示金字塔。 代码: ‘’‘数字金字塔’’’ import random n = int(input(“请输入一个行数(1-15之间):”)) for i in range(1, n + 1, 1): for j in range(1, n + 1 - i, 1): print(’ ‘, end=’ ‘) for j in range(i, 0, -1): if j < 10: print(’ %s ’ % j

小石妖的博客 1万+

C语言函数打印数字金字塔

一,目标:输入一个1~9的数字(n)打印1~n的一个数字金字塔例子如下 输入:5 输出: 1 2 2 3 3 3 4 4 4 4 5 5 5 5 5 (呃,由于这个不是编译器所以只能勉强对齐,1前面是四个空格,数字间隔是一个空格) 二,编写思路: 第一步输入: 第二步输出: 我们先手动打印一个金字塔 ...

wwhdsg的博客 1万+

C语言:数字金字塔

本题要求实现函数输出n行数字金字塔。 函数接口定义: void pyramid( int n ); 其中n是用户传入的参数,为[1, 9]的正整数。要求函数按照如样例所示的格式打印出n行数字金字塔。注意每个数字后面跟一个空格。 裁判测试程序样例: #include <stdio.h> void pyramid( int n ); int main() { int n; scanf("%d", &n); pyramid(n); re.

qq_53452010的博客 1万+

Python零基础也能实现数字金字塔?

这是本人第一次写博客,一次大胆的尝试,希望通过这种方式督促自己,让自己热爱编程,通过写博客的方式复习知识。自己平时参加的电赛,总是会在博客上阅读到各种大佬的文章,受益匪浅,希望可以通过自己的努力帮助更多的像我一样的小白初学者。第一次博客的内容我选择了自己在Python的上机课上遇到的一道题目,用Python语言实现数字金字塔。这一次我们学习了print函数以及for循环,分析金字塔的格式后使用嵌套循环完成了每一行每一列的打印,最后成功实现。

2302_81117349的博客 2102

Python数字金字塔

数字金字塔

sjq_915的博客 4116

打印由数字组成的金字塔图案——python

1222333334444444555555555打印由数字组成的金字塔图案。但n=9时,如下图所示。

qq_64037242的博客 3268

用python来打印数字金字塔

1.题目要求 编程输入金字塔的层数,打印出相应的金字塔层数,要求层数在1-15层之间 2.代码 layer = int(input("请输入您想打印的金子塔的层数(1-15):")) for i in range(1,layer+1): print(" "*(15-i),end="") border_num = i while border_num >= 1: print(border_num,end="") #注意:end=""是为了不在后面空行断开,即为了方便后面打印的该数字

m0_64071735的博客 1万+
上一篇: Python编程常用的36个经典案例!
下一篇: 10个Python自动化脚本,让日常任务轻松便捷!
Python_trys
博客等级 码龄2年 4357粉丝 377原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值