|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
这个是我的程序:
for i in range(1,10):
for j in range(1,i+1):
print (i,"x",j,"=",i*j)
print (end='\n')
结果是这样:
1 x 1 = 1
2 x 1 = 2
2 x 2 = 4
3 x 1 = 3
3 x 2 = 6
3 x 3 = 9
4 x 1 = 4
4 x 2 = 8
4 x 3 = 12
4 x 4 = 16
5 x 1 = 5
5 x 2 = 10
5 x 3 = 15
5 x 4 = 20
5 x 5 = 25
6 x 1 = 6
6 x 2 = 12
6 x 3 = 18
6 x 4 = 24
6 x 5 = 30
6 x 6 = 36
7 x 1 = 7
7 x 2 = 14
7 x 3 = 21
7 x 4 = 28
7 x 5 = 35
7 x 6 = 42
7 x 7 = 49
8 x 1 = 8
8 x 2 = 16
8 x 3 = 24
8 x 4 = 32
8 x 5 = 40
8 x 6 = 48
8 x 7 = 56
8 x 8 = 64
9 x 1 = 9
9 x 2 = 18
9 x 3 = 27
9 x 4 = 36
9 x 5 = 45
9 x 6 = 54
9 x 7 = 63
9 x 8 = 72
9 x 9 = 81
这个 是答案:
for i in range(1,10):
for j in range(1,i+1):
print (i,"x",j,"=",i*j,end='')
print ('\n')
结果就是:
1 x 1 = 1
2 x 1 = 22 x 2 = 4
3 x 1 = 33 x 2 = 63 x 3 = 9
4 x 1 = 44 x 2 = 84 x 3 = 124 x 4 = 16
5 x 1 = 55 x 2 = 105 x 3 = 155 x 4 = 205 x 5 = 25
6 x 1 = 66 x 2 = 126 x 3 = 186 x 4 = 246 x 5 = 306 x 6 = 36
7 x 1 = 77 x 2 = 147 x 3 = 217 x 4 = 287 x 5 = 357 x 6 = 427 x 7 = 49
8 x 1 = 88 x 2 = 168 x 3 = 248 x 4 = 328 x 5 = 408 x 6 = 488 x 7 = 568 x 8 = 64
9 x 1 = 99 x 2 = 189 x 3 = 279 x 4 = 369 x 5 = 459 x 6 = 549 x 7 = 639 x 8 = 729 x 9 = 81
为什么end书写的地方不同,产生的效果不同,这里面的逻辑没太明白。
本帖最后由 jackz007 于 2024-2-25 13:44 编辑
end 是函数 print() 的一个命名可选参数,这个参数的缺省值是 '\n',其作用是在输出打印内容的最后,多附加输出一个换行符 '\n',这就是为什么调用 print() 会输出一个空行的原因。
当然,命名可选参数 end 的缺省值也是可以被改变的,这就需要在调用 print() 的时候,用 end = 进行修改,当修改为 end = '' 的时候,输出完打印内容后,就不再会回车换行,这样,就可以让多次调用 print() 的输出内容按前后顺序呈现在屏幕的同一行上。
为了加深理解,请楼主考察、运行下面的代码:
- print("不用 end=''")
- print(1)
- print(2)
- print(3)
- print(4)
- print("使用 end=''")
- print(1 , end='')
- print(2 , end='')
- print(3 , end='')
- print(4)
复制代码
运行实况:
- D:\[exercise]\Python>python x.py
- 不用 end=''
- 1
- 2
- 3
- 4
- 使用 end=''
- 1234
- D:\[exercise]\Python>
复制代码
|
|