Python春节特训营06:电脑也会九九乘法口诀

2024-01-10 11:59

本文主要是介绍Python春节特训营06:电脑也会九九乘法口诀,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

第6天 电脑也会九九乘法口诀

在这里插入图片描述

上一节课我们写了第一个 Python 程序,并使用了输入和输出函数 —— input 和 print。今天我们将进一步学习输出函数 print 的用法,还会学习程序的控制流程,并在此基础上让电脑为我们打印出《九九乘法表》。

print 输出格式

print 默认输出是换行的,如果不想换行,需要加上 end 参数来指定结束符,就像这样:

print("Hello World", end="")

前面我们通过这种方式打印一句话和你的名字:

name = input("你好,请问你叫什么名字?")
print("很高兴认识你,", name)

今天我们会学习一种新的表达方式,我们暂时称呼它为 “字符串格式化输出”,上面这行代码就可以改写为:

name = input("你好,请问你叫什么名字?")
print("很高兴认识你,{}".format(name))

字符串 "很高兴认识你,{}" 中的花括号是占位符,意思是等一下这里要打印其他内容,先占个位。至于填充什么内容,就由字符串后的 .format() 中的内容决定。

如果还想让它喊你的名字三遍,就可以预留三个坑,然后在 format 中填充。

name = input("你好,请问你叫什么名字?")
print("很高兴认识你,{}, {}, {}".format(name, name, name))

我们可以给占位符编个号,表示这个坑使用 format 函数中的第几个参数。下面代码的执行效果与上面是一样的。

name = input("你好,请问你叫什么名字?")
print("很高兴认识你,{0}, {1}, {2}".format(name, name, name))

也许你已经想到了,name 变量其实不需要写三遍,这样就行了!

name = input("你好,请问你叫什么名字?")
print("很高兴认识你,{0}, {0}, {0}".format(name))

除此之外,我们还可以为不同的坑指定不同的效果,比如左对齐、右对齐、居中。

name = input("你好,请问你叫什么名字?")
print("很高兴认识你,{0:<8}, {0:^8}, {0:>8}".format(name))

执行效果如下:

在这里插入图片描述

占位符的序号和其需要的效果操作之间用冒号 : 隔开。< 表示左对齐(默认),> 表示右对齐,^ 表示中间对齐。后面的数字8表示这里占了八个字符长度,你也可以改成你需要的长度。

关于 print 的格式化输出,我们先了解到这里就可以了!

在这里插入图片描述

循环语句

前面的代码都是顺序执行的,也就是执行完第一行,再执行第二行,直到最后一行结束。在程序中,我们还经常使用循环来让代码重复执行,先把下面的代码执行一遍看看。

for x in range(10):print(x)

没错,你会看到屏幕上打印出0~9,一共十行数字。

函数 range(10) 帮我们创建了0~9这十个数字,我们通过 for ... in ... 语句将这十个数字依次取出来,放在变量 x 中,然后再使用 print 函数把它们打印出来。

需要注意的是,第二行代码有一些空白位置,这是因为按了 Tab 键。在你输入代码的时候,你使用的编辑器可能也已经帮你添加上了。这个空白叫做代码缩进,表示代码之间的从属关系,在这里就表示 print(x) 这行代码是在 for 循环中被执行的。

range 函数默认从0开始,如果想从1开始,则可以使用两个参数,分别表示开始和结束。

for x in range(1, 10):print(x)

循环是可以嵌套的,也就是说,一层循环中可以包括另一层循环,下一层循环中由可以包含下一层循环,但建议不要嵌套太多层,不然会晕的。。。

在这里插入图片描述

下面的代码中有两层循环,第一层循环5次,第二层循环10次。第3行的 print 语句属于第二层循环,第4行的 print 则属于第一层,可以看到代码缩进其实是在表达这种层次关系。

for x in range(5):for y in range(10):print("*", end=" ")print("")

执行代码,看看是不是打印出了5行10列的小星星。

* * * * * * * * * * 
* * * * * * * * * * 
* * * * * * * * * * 
* * * * * * * * * * 
* * * * * * * * * * 

除了 for in 循环语句,在 Python 中我们还可以使用 while 循环语句。同样是打印0~9十个数字,使用 while 循环可以这样来写:

x = 0
while x<10:print(x)x = x + 1

这里我们借助了 x 变量来记录当前的数字,紧跟 while 后面的是判断条件,比如这里的 x<10 表示当 x 小于 10 的时候,执行循环中的代码。换句话说,就是当 x 大于等于 10,就跳出 while 循环,此时程序就结束了。

同样,while 循环也可以嵌套,for in 循环和 while 循环之间也可以相互嵌套。

九九乘法表

在这里插入图片描述

学习完前面的内容,我们已经完全有能力使用 Python 来打印一张九九乘法表啦!紧不紧张,兴不兴奋?

你先想十分钟,想不出来再看看我下面给的代码。

在这里插入图片描述

这里使用 for in 循环来实现,打开编辑器输入如下代码,并保存为 99Table.py 文件。

for i in range(1, 10):for j in range(1, i+1):print("{}*{}={:<3}".format(j,i,i*j), end=" ")print("")

在终端执行 python3 99Table.py,看看小九九有没有打印出来。

在这里插入图片描述

代码说明

  • 代码缩进是指一行代码开始前的空白区域,表达程序的格式框架,一个程序中可能会存在单行缩进或多行缩进。缩进是程序语法的一部分,需要严格明确;缩进表明了代码间的层次关系,缩进不正确会导致程序运行错误;通常使用1个Tab来缩进。
  • 九九乘法表可以看做一个九行九列的表格,因此使用两层循环可以很方便地实现。第一行代码表示变量i的值从1到9循环执行。
  • 因为九九乘法表的形状是三角形,也就是说内容是逐行增加的,所以第二行的循环范围从1开始,到 i+1 结束,随着第一层循环中 i 的变化,第二层循环中的长度也会发生变化。
  • Python 中可以直接做数值运算,所以第三行代码使用 i*j 来得出乘法表中的各项结果,需要注意的是可能是输出的格式。
  • 第四行代码属于第一层循环,它的作用是每打印完一行就换一个新行。

作业

(1)自己动手练习一遍,看看能否输出九九乘法表。

(2)尝试使用 while 循环语句来输出九九乘法表。

这篇关于Python春节特训营06:电脑也会九九乘法口诀的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/590726

相关文章

Python 迭代器和生成器概念及场景分析

《Python迭代器和生成器概念及场景分析》yield是Python中实现惰性计算和协程的核心工具,结合send()、throw()、close()等方法,能够构建高效、灵活的数据流和控制流模型,这... 目录迭代器的介绍自定义迭代器省略的迭代器生产器的介绍yield的普通用法yield的高级用法yidle

使用Python将JSON,XML和YAML数据写入Excel文件

《使用Python将JSON,XML和YAML数据写入Excel文件》JSON、XML和YAML作为主流结构化数据格式,因其层次化表达能力和跨平台兼容性,已成为系统间数据交换的通用载体,本文将介绍如何... 目录如何使用python写入数据到Excel工作表用Python导入jsON数据到Excel工作表用

Python基础语法中defaultdict的使用小结

《Python基础语法中defaultdict的使用小结》Python的defaultdict是collections模块中提供的一种特殊的字典类型,它与普通的字典(dict)有着相似的功能,本文主要... 目录示例1示例2python的defaultdict是collections模块中提供的一种特殊的字

利用Python快速搭建Markdown笔记发布系统

《利用Python快速搭建Markdown笔记发布系统》这篇文章主要为大家详细介绍了使用Python生态的成熟工具,在30分钟内搭建一个支持Markdown渲染、分类标签、全文搜索的私有化知识发布系统... 目录引言:为什么要自建知识博客一、技术选型:极简主义开发栈二、系统架构设计三、核心代码实现(分步解析

基于Python实现高效PPT转图片工具

《基于Python实现高效PPT转图片工具》在日常工作中,PPT是我们常用的演示工具,但有时候我们需要将PPT的内容提取为图片格式以便于展示或保存,所以本文将用Python实现PPT转PNG工具,希望... 目录1. 概述2. 功能使用2.1 安装依赖2.2 使用步骤2.3 代码实现2.4 GUI界面3.效

Python获取C++中返回的char*字段的两种思路

《Python获取C++中返回的char*字段的两种思路》有时候需要获取C++函数中返回来的不定长的char*字符串,本文小编为大家找到了两种解决问题的思路,感兴趣的小伙伴可以跟随小编一起学习一下... 有时候需要获取C++函数中返回来的不定长的char*字符串,目前我找到两种解决问题的思路,具体实现如下:

python连接本地SQL server详细图文教程

《python连接本地SQLserver详细图文教程》在数据分析领域,经常需要从数据库中获取数据进行分析和处理,下面:本文主要介绍python连接本地SQLserver的相关资料,文中通过代码... 目录一.设置本地账号1.新建用户2.开启双重验证3,开启TCP/IP本地服务二js.python连接实例1.

基于Python和MoviePy实现照片管理和视频合成工具

《基于Python和MoviePy实现照片管理和视频合成工具》在这篇博客中,我们将详细剖析一个基于Python的图形界面应用程序,该程序使用wxPython构建用户界面,并结合MoviePy、Pill... 目录引言项目概述代码结构分析1. 导入和依赖2. 主类:PhotoManager初始化方法:__in

Python从零打造高安全密码管理器

《Python从零打造高安全密码管理器》在数字化时代,每人平均需要管理近百个账号密码,本文将带大家深入剖析一个基于Python的高安全性密码管理器实现方案,感兴趣的小伙伴可以参考一下... 目录一、前言:为什么我们需要专属密码管理器二、系统架构设计2.1 安全加密体系2.2 密码强度策略三、核心功能实现详解

Python Faker库基本用法详解

《PythonFaker库基本用法详解》Faker是一个非常强大的库,适用于生成各种类型的伪随机数据,可以帮助开发者在测试、数据生成、或其他需要随机数据的场景中提高效率,本文给大家介绍PythonF... 目录安装基本用法主要功能示例代码语言和地区生成多条假数据自定义字段小结Faker 是一个 python