鱼C论坛

 找回密码
 立即注册
查看: 2402|回复: 6

[已解决]第四章最后一个动手题,这里的print()不明白是什么意思,求教大神

[复制链接]
发表于 2017-4-18 22:45:56 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
题目为输入一个数字,然后打印出该数字-1的空格数和"*"数
甲鱼老师代码如下:

temp = input('请输入一个整数:')
number = int(temp)
while number:
    i = number - 1
    while i:
        print(' ', end = '')
        i = i - 1
    j = number
    while j:
        print('*', end = '')
        j = j - 1
    print()
    number = number - 1

我有疑问的是倒数第二排的这个print(),我理解成这里输出为空,麻烦哪位大神能给说明下为什么输出了上面的while内容
最佳答案
2017-4-18 23:16:06
是啊,print里面的end参数表示的就是最后一个字符是什么,默认的是换行符
所以前面end=''就不会换行
无标题.png
无标题.png
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2017-4-18 22:57:20 | 显示全部楼层
就是输出一个空格啊,然后根据i的数量,每次输入一个空格,不换行。因为while循环,所以一共输出i个空格。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-4-18 23:13:35 | 显示全部楼层
ooxx7788 发表于 2017-4-18 22:57
就是输出一个空格啊,然后根据i的数量,每次输入一个空格,不换行。因为while循环,所以一共输出i个空格。

还是理解不了哇,我去掉倒数第二行的这个print(),结果打印出来的都没换行,这是换行的作用吗
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-4-18 23:16:06 | 显示全部楼层    本楼为最佳答案   
是啊,print里面的end参数表示的就是最后一个字符是什么,默认的是换行符
所以前面end=''就不会换行
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-4-18 23:22:06 | 显示全部楼层
ooxx7788 发表于 2017-4-18 23:16
是啊,print里面的end参数表示的就是最后一个字符是什么,默认的是换行符
所以前面end=''就不会换行

好的好的,谢谢哈
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-4-18 23:24:38 | 显示全部楼层
luolei1943 发表于 2017-4-18 23:22
好的好的,谢谢哈

再送你个一行解决的代码!
  1. print('\n'.join([' '*(i-1)+'*'*i for i in range(int(input('输入一个整数:')),0,-1)]))
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-4-19 09:53:10 | 显示全部楼层
ooxx7788 发表于 2017-4-18 23:24
再送你个一行解决的代码!

膜拜大佬,完全看不懂
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-5-19 23:48

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表