快捷搜索:  汽车  科技

python怎么写一个九九乘法表?Python教程实践篇用Python打印九九加法表

python怎么写一个九九乘法表?Python教程实践篇用Python打印九九加法表1、变量为j,而不是i。这是因为变量i在后面还需要用到,所以需要定义一个不同的变量名,j是另一个经常用到的用作循环变量名的标识符。这是上一条for语句的第一条语句,它与上一条语句很相似,但有两个不同:下面我来解释一下该程序的所有代码。程序一共只有4行,先从第一行的for循环语句开始。这条for循环语句遍历1到9,其中range(1 10)返回一个列表,列表中有数值1到9共九个成员,变量i依次接收成员的值,可以在其后的语句块中使用它引用列表中的成员。下面是打印这个列表中的每个成员的示例:

先看一下代码在 Python3.10.4 的 IDLE 中输入后的运行结果动态图:

python怎么写一个九九乘法表?Python教程实践篇用Python打印九九加法表(1)

打印九九加法表

其中运行的代码如下:

for i in range(1 10): for j in range(1 i 1): print(f'{j} {i}={i j}' end='\t') print()

希望通过本文的学习,大家能写出打印九九乘法表的程序。

下面我来解释一下该程序的所有代码。程序一共只有4行,先从第一行的for循环语句开始。

for i in range(1 10):

这条for循环语句遍历1到9,其中range(1 10)返回一个列表,列表中有数值1到9共九个成员,变量i依次接收成员的值,可以在其后的语句块中使用它引用列表中的成员。

下面是打印这个列表中的每个成员的示例:

python怎么写一个九九乘法表?Python教程实践篇用Python打印九九加法表(2)

for j in range(1 i 1):

这是上一条for语句的第一条语句,它与上一条语句很相似,但有两个不同:

1、变量为j,而不是i。这是因为变量i在后面还需要用到,所以需要定义一个不同的变量名,j是另一个经常用到的用作循环变量名的标识符。

2、range(1 i 1) 函数中的第2个参数是 i 1 而不是10,这是因为在九九加法表中,如果两个加数相同,只显示一个,较小的加数显示在前面。比如只显示1 2=3,而不显示2 1=3,

所以每次循环,第1次只需要依次遍历到1,第2次只需要遍历到2、第3次……直到第9次需要遍历到9即可,遍历终点正是上一个循环变量 i 的值。

由于range(参数一 参数二) 返回的列表成员中,包含参数一,但不包含参数二(只包含到参数二减1,所以要想遍历到9,需要提供参数10,要想遍历到i,需要提供参数 i 1。

print(f'{j} {i}={i j}' end='\t')

这是第三行的打印语句,是整个程序输出的关键。print是个函数,它的功能是将指定的数据输出打印到IDLE中。

在本例中,print接收了两个参数,第一个参数是要打印的主要字符串内容,第二个以end=开头的参数表示在打印了前面的内容之后再追加打印的内容,这里追加的内容是'\t',这是一个转义字符,表示制表符,制表符的功能就是用来对齐的(它在Python IDLE中的标准宽度是8个字符,在记事本中是14个字符,只要它前面的字符长度少于一个标准字符,那么它的后一字符都将从下一标准宽度开始,可以按Tab键在Python IDLE和记事本等编辑器中输入制表符)。

本例中print函数的第一个参数是个格式化字符串,在「Python教程」第6篇 Python基本语法之字符串 中介绍了这种以f开头的格式化字符串。这里再简单介绍一下。

前缀f的两个单引号包围的字符串中,大括号{}包围的内容表示这一个表达式,会将其结果计算之后再替换掉大括号中的内容,所以对于第1次循环时,i和j的值都为1,f'{j} {i}={i j}' 就表示 f'{1} {1}={1 1}',将f和大括号去除,以及计算=右边的值就是 '1 1=2' 了。

由于第1次循环时i的值为1,所以内层循环只运行一次就结束了,它会执行第4条语句。

print()

第4条语句是个没有参数的print函数,表示打印一个空行。在九九加法表中,每打印完1个数字的加法表之后,需要换行再显示下一个数字的加法表。

整体流程解析

python怎么写一个九九乘法表?Python教程实践篇用Python打印九九加法表(3)

首先是外层循环开始,i从1遍历到9,第1次循环时 i 等于1,然后开始内层循环,从1开始,到1结束,即只循环1次,j=1,内层循环体中打印1 1=2。内层循环结束,再打印一个空行,然后开始外层循环第2次循环。

第2次外层循环,i等于2,内层循环j从1遍历到2,先打印1 2=3,追加一个制表符,再打印2 2=4,内层循环结束,打印一个空行,然后开始第3次外层循环。

第3次外层循环,i等于3,内层循环j从1遍历到3,所以依次打印1 3=4、制表符、2 3=5、制表符、3 3=6,内层循环结束,打印一个空行,然后开始第4次外层循环。

第4次外层循环,i等于4,可依上文类推到9的情况。

举一反三

知道了上述示例的运行流程,所以九九乘法表的编写也就很容易了,只需要将第三行的两个加号,替换成乘号就可以了。

在Python中,乘号运算用*表示。显示的字符串中的乘号可以用字母x表示。

下面是九九乘法表的代码及输出示例:

python怎么写一个九九乘法表?Python教程实践篇用Python打印九九加法表(4)

当然,也可以打印11到19的乘法表,只需要改动循环参数即可:

python怎么写一个九九乘法表?Python教程实践篇用Python打印九九加法表(5)

注:由于11到19的所有乘法结果都是3位数,加数也都是2位数,加上运算符,共9个字符,已经超过了Python IDLE的8个字符的标准制表符宽度,可以只用空格隔开,制表符隔开就显得太大了。

结语

本文并不是教程的正式篇,而是实践番外篇。如果你想学习系统性的学习Python编程,可从我的主页进入查看。

如果你还没有安装Python环境,请参阅 Python教程:第3篇 安装Python开发环境

你也可以阅读 「Python教程」第4篇 Python开发环境介绍 来稍微了解这个环境,然后就可以依本文提示编写九九加法表等程序了。

当然,我也希望你能关注我,将本文分享给你身边需要的朋友们。

如果你还能告诉我,这教程的不足之处,你需要什么,那就更好了。


正式教程最新篇:

Python教程:第9篇 字符串基本操作

Python教程:第10篇 字符串对象操作

Python教程:第11篇 运算符(1)赋值运算符

更多历史篇就不现眼了,感觉没写好,而现在已经无法修改了。

猜您喜欢: