opple12 发表于 2016-10-14 10:05:10

print end的输出现象????求解

本帖最后由 opple12 于 2016-10-14 10:10 编辑

def test(var):
        var=123
        print(var,end='')

var=456
test(var)
print(var)
输出结果为什么是123456 ??????
这样不是等于改变了全局变量吗?????
end=不是相当于\n吗?????,


上面是昨天的输出结果

今天我又试了一次,结果又变了,这次的结果感觉正常。

>>> def fun(var):
        var= 1314
        print(var,end=' ')

       
>>> var = 520
>>> fun(var)
1314
>>> print(var)
520
>>>

SixPy 发表于 2016-10-14 11:50:18

善用【论坛搜索】功能,那里可能有您想要的答案!
http://search.fishc.com/cse/search?s=14988791857133860392&q=print%20end&partner=discuz

小古比鱼 发表于 2020-11-19 19:25:09

test()函数中对变量var的赋值不会影响全局变量var。运行“test(var)”会输出test()函数中局部变量var的值,运行“print(var)”会输出全局变量var的值。“end=''”的意思是以空字符代替默认的换行符作为输出结束的标志,即当下一次执行print()语句时输出不换行。因此,若在编辑模式下(将代码放在文件中)先后执行“test(var)”和“print(var)”两句,则输出会连在一起,只有一行;若在交互模式下分别执行上述两句,便会分别输出结果。
页: [1]
查看完整版本: print end的输出现象????求解