ladynora 发表于 2020-3-19 16:21:20

请教能打印成竖列的原因

print('red\tyellow\tgreen')
for red in range(0, 4):
    for yellow in range(0, 4):
      for green in range(2, 7):
            if red + yellow + green == 8:
                # 注意,下边不是字符串拼接,因此不用“+”哦~
                print(red, '\t', yellow, '\t', green)

结果:

red        yellow   green
0        2        6
0        3        5
1        1        6
1        2        5
1        3        4
2        0        6
2        1        5
2        2        4
2        3        3
3        0        5
3        1        4
3        2        3
3        3        2
>>>


以上代码为什么可以打印出来是一竖列的样子?感觉应该是 print(red, '\t', yellow, '\t', green)让结果变成竖列的?谢谢

永恒的蓝色梦想 发表于 2020-3-19 16:24:41

循环多次打印就成这样了

qiuyouzhi 发表于 2020-3-19 16:28:45

因为print函数的end参数默认是\n,每打印完就会换行

zltzlt 发表于 2020-3-19 17:15:22

每次打印就换行一次,所以显示的效果是这样

YSunShower 发表于 2020-3-19 22:07:02

如果想要不换行,之前的 2.x 版本可以这样 print x, 在末尾加上 ","。在 3.x 中这样不起任何作用要想换行你应该写成 print(x,end = '' )

lixiangyv 发表于 2020-3-20 17:28:25

因为 print 函数会自己换行,因为 print 有一个参数 end ,他的默认值是 "\n" ,也就是换行。
页: [1]
查看完整版本: 请教能打印成竖列的原因