|
发表于 2022-12-25 11:34:00
|
显示全部楼层
你的变量 j 在程序最前面定义了吧,而且定义的时候给的值是 6
第一次,也就是 i 的值是 1 的时候,内层的for循环一次也不执行
然后执行 print(i,j,'\n')
i 的值是 1,j 的值就是你在最前面定义的时候给的值 6
所以输出 1 6 ,然后换行
如果你在最前面给 j 的值是 5,那么输出的就是 1 5 换行
- sh-5.1$ cat main.py
- #!/usr/bin/env python
- #coding=utf-8
- for i in range(1,8):
- for j in range(1,i):
- print(i,'*',j,'=',sep=' ',end=' ')
- print(i,j,'\n')
- sh-5.1$ ./main.py
- Traceback (most recent call last):
- File "/tmp/./main.py", line 7, in <module>
- print(i,j,'\n')
- NameError: name 'j' is not defined
- sh-5.1$ vim main.py
- sh-5.1$ cat main.py
- #!/usr/bin/env python
- #coding=utf-8
- j = 5
- for i in range(1,8):
- for j in range(1,i):
- print(i,'*',j,'=',sep=' ',end=' ')
- print(i,j,'\n')
- sh-5.1$ ./main.py
- 1 5
- 2 * 1 = 2 1
- 3 * 1 = 3 * 2 = 3 2
- 4 * 1 = 4 * 2 = 4 * 3 = 4 3
- 5 * 1 = 5 * 2 = 5 * 3 = 5 * 4 = 5 4
- 6 * 1 = 6 * 2 = 6 * 3 = 6 * 4 = 6 * 5 = 6 5
- 7 * 1 = 7 * 2 = 7 * 3 = 7 * 4 = 7 * 5 = 7 * 6 = 7 6
- sh-5.1$
复制代码 |
|