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)
以上就是我的方法,希望对你们有所帮助,感谢大家对的支持。