ID花花花 发表于 2020-8-25 10:42:27

求问 第四节课 动动手

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


为什么 运行程序 *前面会有空格

coolliqing 发表于 2020-8-25 10:52:47

本帖最后由 coolliqing 于 2020-8-25 10:58 编辑

print(' ',end = '')#这句是什么意思? 作用是什么   为什么' ' 里面不写东西?
这个就是输出的*前面有空格的原因两个引号中间有个空格的,不是什么都没写;end = ''这是print()函数的一个参数,作用是设置输出文本末尾的字符串,默认是/n,这里的作用是打印不换行

print() 里面什么都不写默认是打印一个空行

yhhpf 发表于 2020-8-25 10:53:01

print(' ',end = '')
print是有默认参数的,end='/n'既默认换行符,而上面的代码也就表示不会换行了,而是变成空格,所以会有空了。

求资专用 发表于 2020-8-25 11:22:58

内置函数里其实也是有参数的,当你没有输入这些参数的时候,它会用默认的参数。
’print函数里其实是这样的:print(*objects, sep=' ', end='\n', file=sys.stdout, flush=False)。
objects -- 复数,表示可以一次输出多个对象。输出多个对象时,需要用 , 分隔。
sep -- 用来间隔多个对象,默认值是一个空格。

end -- 用来设定以什么结尾。默认值是换行符 \n,所以当你什么都不输入时,print完后会自动打一个换行符,当你输入了end=‘ ’,那print完以后就会打一个空格。同样,你输入end=‘123’,那print最后就会打一个123

file -- 要写入的文件对象。默认的是系统标准输出。
flush -- 输出是否被缓存通常决定于 file,但如果 flush 关键字参数为 True,流会被强制刷新。

疾风怪盗 发表于 2020-8-25 11:29:11


temp = input('请输入一个整数:')
number = int(temp)
while number:
    i = number - 1
    while i:
      print(' ',end = '')#这句是什么意思? 作用是什么   为什么' ' 里面不写东西?
         #这句话就是打印*号前面的空格,' '里面有东西,是一个空格,传入参数5,就依次4,3,2,1的打印出空格来,把空格换成其他任意数打印看一下就明白了;end是结尾,后面跟着空值,表示不换行
      i = i - 1
    j = number
    while j:
      print('*',end = '')
      j = j - 1
    print()#这里是干什么的 有什么用 为什么 括号是空的
    #这个就是打印一行空的一行
    number = number - 1
页: [1]
查看完整版本: 求问 第四节课 动动手