代码如下:
代码详解(为了让自己理解):
for i in range(1,10):
# print(i,end = ' ')
for j in range(1,i+1):
print('%s*%s=%s' %(i,j,i*j),end = ' ')
print()
1.
for i in range(1,10)
这是一个for循环语句,range()是一个函数,for i in range(),就是给i赋值:
比如for i in range(1,10)的意思就是把1,2,3,4,5,6,7,8,9依次赋值给i;
再举个例子,3以内的数很容易理解:for i in range(1,3)表示将i赋值给1和2。
有同学可能会有疑问,为什么(1,10)的值是1-9,而不是10?关于这个问题,我建议大家记住5个字:顾头不理尾巴,(也就是说,头是:取尾巴前面的数字,而不管尾巴是:don' t 取尾部的个数,所以最后的尾部 10 是不会取的)
附加其他理解:range()
range(1):这个取的值是0
range(2):这个取得值是0,1
range(3):这个取得值是0,1,2
range(0, 3, 1):得到的值是0,1,2,第三个数字1其实是默认步长,但是我写出来了,你写不出来。整体写下来的时候默认是从0开始,除非你自己定义了数字1或者2,也就是值从1或者2开始。
2.
for j in range(1,i+1)
在给i赋值的基础上,做进一步的循环操作,即给j赋值
给j赋值是建立在给i赋值的基础上
直接写结果,我觉得更好理解:
理解了第一步的解释很明显给i依次赋值为1,2,3,4,5,6,7,8,9
for j in range(1,i+1)
当i = 1,j=(1,2),此时j 的取值就是1
当i = 2,j=(1,3),此时j 的取值就是1,2
当i = 3,j=(1,4),此时j 的取值就是1,2,3
当i = 4,j=(1,5),此时j 的取值就是1,2,3,4
当i = 5,j=(1,6),此时j 的取值就是1,2,3,4,5
...........
3.
print('%s*%s=%s' %(i,j,i*j),end = ' ')
print()
%s 表示格式化值。前2步得到后,开始打印%s*%s=%s %(i,j,i*j,end = ' ' ),其中end = " " 表示在每个末尾加一个空格计算。主要是因为排版好看,容易理解。那么结果是:
1*1=1
2*1=2 2*2=4
3*1=3 3*2=6 3*3=9
4*1=4 4*2=8 4*3=12 4*4=16
5*1=5 5*2=10 5*3=15 5*4=20 5*5=25
.........
本文为原创文章,版权归知行编程网所有,欢迎分享本文,转载请保留出处!
你可能也喜欢
- ♥ 如何在eclipse中导入python项目09/21
- ♥ 如何调用python库10/24
- ♥ 如何在 Python 中使用 fock() 函数11/24
- ♥ python中的e是什么意思08/24
- ♥ 如何在python中输入时间08/25
- ♥ 什么是python库08/21
内容反馈