鱼C论坛

 找回密码
 立即注册
查看: 2679|回复: 2

[已解决]print end的输出现象????求解

[复制链接]
发表于 2016-10-14 10:05:10 | 显示全部楼层 |阅读模式

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

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

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

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

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

上面是昨天的输出结果

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

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

       
>>> var = 520
>>> fun(var)
1314
>>> print(var)
520
>>>
最佳答案
2020-11-19 19:25:09
test()函数中对变量var的赋值不会影响全局变量var。运行“test(var)”会输出test()函数中局部变量var的值,运行“print(var)”会输出全局变量var的值。“end=''”的意思是以空字符代替默认的换行符作为输出结束的标志,即当下一次执行print()语句时输出不换行。因此,若在编辑模式下(将代码放在文件中)先后执行“test(var)”和“print(var)”两句,则输出会连在一起,只有一行;若在交互模式下分别执行上述两句,便会分别输出结果。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2016-10-14 11:50:18 | 显示全部楼层
善用【论坛搜索】功能,那里可能有您想要的答案!
http://search.fishc.com/cse/search?s=14988791857133860392&q=print%20end&partner=discuz
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-11-19 19:25:09 | 显示全部楼层    本楼为最佳答案   
test()函数中对变量var的赋值不会影响全局变量var。运行“test(var)”会输出test()函数中局部变量var的值,运行“print(var)”会输出全局变量var的值。“end=''”的意思是以空字符代替默认的换行符作为输出结束的标志,即当下一次执行print()语句时输出不换行。因此,若在编辑模式下(将代码放在文件中)先后执行“test(var)”和“print(var)”两句,则输出会连在一起,只有一行;若在交互模式下分别执行上述两句,便会分别输出结果。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-21 21:52

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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