关于end=''指令的问题
end=' '的意思不应该是末尾不换行加空格吗,为什么我运行的还是换行了?请求指教。但end=''就执行的挺对的{:10_284:}实测,没有换行啊,print(end='')啥也没有,print(end=' ')就是一个空格。。。。。。。。 print()本身自带一个换行,你说的那个是print自带的,跟end=" "这个空格结束符无关 IDLE 会在每次输出后都进行一次换行,但打印了空内容不会,与 print 无关。 本帖最后由 kogawananari 于 2020-10-12 20:23 编辑
你代码前面有 >>>
这个是不显示None的
它的实现是这样的:
while 1:
ex = input('>>> ')
try:
exec(compile(ex,'','single'))
except Exception as e:
print("Traceback (most recent call last):")
print(e)
你的print返回的None 所以是啥都没有 但还是经过了一轮循环 新的一轮里input('>>> ')给换了行 >>> help(print)
Help on built-in function print in module builtins:
print(...)
print(value, ..., sep=' ', end='\n', file=sys.stdout, flush=False)
Prints the values to a stream, or to sys.stdout by default.
Optional keyword arguments:
file:a file-like object (stream); defaults to the current sys.stdout.
sep: string inserted between values, default a space.
end: string appended after the last value, default a newline.
flush: whether to forcibly flush the stream.
==============================
注意看帮助文档。print()函数默认的end是等于一个换行符。
也就是说例如print("hellow world"),实际等于print("hellow world",end="\n")。
也就是是打印"hellow world"+换行符。
你print("hellow world",end=''),就是把end参数定义为空,就不会换行了 kogawananari 发表于 2020-10-12 20:20
你代码前面有 >>>
这个是不显示None的
它的实现是这样的:
据我所知,实现不是这样的
页:
[1]