用python打印1~20的整数实例讲解

yipeiwu_com6年前Python基础

while语句打印1-20的整数,并且每行打印五个数,为了实现每行5个数,我们使用一个if判断语句来实现,判断当打印出5个数之后,自动换行打印出来,直至完全输出来。希望对正在学习python的你们有所帮助。

第一步:先打开我们的pycharm软件,然后新建一个python文件,“file”,“new”,“python file”

第二步:新建好python文件之后,我们在编辑页面输入以下代码:

i=1
while i<=20:
  print(i,end=' ') 
  if i%5==0:
    print(" ")
  i+=1

第三步:代码编写好之后,我们鼠标右键找到“run”进行运行,或者同时按住键盘上的Ctrl+shift+F10进行程序的运行

第四步:运行成功之后,我们可以看到我们的控制面板出现了我们代码的算法实现的功能效果了,能够实现每行5个数字

第五步:在代码中,因为我们使用的是while语句实现,所以我们先定义变量i的初始值为1,然后再循环到20打印出来

第六步:为了实现每行5个数,我们使用一个if判断语句来实现,判断当打印出5个数之后,自动换行打印出来,直至完全输出来

知识点实例扩展:

第一种打印实现:

优化点: 切片操作,实际上是内存拷贝的过程,空间复杂度会上升!

def NumberPrint(num):

  tail = " ".join([str(i) for i in range(num, 0, -1)])
  print(tail)

  for j in range(len(tail)):
    if tail[j] == " ":
      print(" " * (j + 1) + tail[j+1:])   
      # print(" " * j ,tail[j+1:])   # 以上另种答打印, j 是否 +1 ,主要是print函数中的 sep 参数
      # print("{:>{}}".format(tail[j + 1:], len(tail)))
NumberPrint(12)

方式二:通过转换成字符串,记录整体长度,使用 format函数进行右对齐操作

def OutputFunc(n,flag=0):

  length = len(' '.join([str(i) for i in range(n, 0, -1)]))
  for i in range(n):
    if flag == 1: #正向打印
      output = " ".join(str(j) for j in range(i + 1, 0, -1))
    else: # 倒着打印
      output = ' '.join(str(j) for j in range(n - i, 0, -1))
    print("{:>{}}".format(output,length))

OutputFunc(12)

# 简化代码

def OutputFunc(n,flag=0):

  length = len(' '.join([str(i) for i in range(n, 0, -1)]))
  for i in range(n):
    if flag == 1:
      args = i+1 #正向打印
    else:
      args = n-i #倒着打印
    print("{:>{}}".format(' '.join(str(j) for j in range(args, 0, -1)), length))

OutputFunc(12)

以上就是我的方法,希望对你们有所帮助,感谢大家对【听图阁-专注于Python设计】的支持。

相关文章

Python内置加密模块用法解析

Python内置加密模块用法解析

这篇文章主要介绍了Python内置加密模块用法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 数据加密: 对称加密:数据加密...

下载与当前Chrome对应的chromedriver.exe(用于python+selenium)

下载与当前Chrome对应的chromedriver.exe(用于python+selenium)

一、 打开Chrome浏览器,输chrome://version/ 二、下载chromedriver.exe驱动 注意:上图可以看到安装的Chrome浏览器版本为79.0.3945.8...

Python 实现Serial 与STM32J进行串口通讯

Python果然是一款非常简明的语言,做东西非常流畅,今天又尝试了一下用Serial做了一个控制台的串口通讯,我用的下位机是STM32F103,搞了一个多小时就成功了,可见Python的...

Python基于回溯法子集树模板解决找零问题示例

Python基于回溯法子集树模板解决找零问题示例

本文实例讲述了Python基于回溯法子集树模板解决找零问题。分享给大家供大家参考,具体如下: 问题 有面额10元、5元、2元、1元的硬币,数量分别为3个、5个、7个、12个。现在需要给顾...

python实现杨氏矩阵查找

本文实例为大家分享了python实现杨氏矩阵查找的具体代码,供大家参考,具体内容如下 问题描述: 在一个m行n列二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的...