python: 函数相同 为何结果 就不同了,,,,,想不通

def printinfo(arg, *args):
print arg
for value in args:
print value
return
printinfo( 5,"cc","WWW",8)
print "-----------------------------------------"
def multiple(arg, *args):
print arg
for value in args:
print value
return
multiple(5,"cc","WWW",8)

运行结果:
C:\Python27\python.exe E:/untitled/p01/cc.py
5

cc

5
cc
WWW
8

Process finished with exit code 0

我复制你的代码跑,结果一样啊!

一模一样,我只是用的是Python 3.6 ,差别不大,
只显示一个是因为你循环了一遍就return了.

运行结果参考图片.

图片说明

图片说明

应该跟输出方法 有关 两个输出方法不一样吧

没别的 就是return位置。Python根据缩进来控制的,第一个print arg之后print一个参数就return了,第二个print arg之后 循环print完参数才return。
so ~you know