-
Python进修教程(learning Python)--2.3.5 Python返回多个值题目
添加时间:2013-7-3 点击量:本节首要进修Python的函数是如何同时返回多个值的题目。
在进修Python的时辰诧异的发明,Python的函数可以同时返回多个值,很有意思。
#define function sum
def sum(x, y):
z = x + y
x = x ^ y
y = x ^ y
x = x ^ y
return z, x, y
#define function main
def main():
a = int(raw_input(plz input a ))
b = int(raw_input(plz input b ))
c = sum(a, b)
print(c)
#entry of programme
main()先看见地度的履行成果如何
plz input a 12
plz input b 13
(25, 13, 12)成果里(25,13,12)这个看上去很新鲜,这是Python里的tuple(元组),新名词,没紧要我们后边将list时会说起。在子函数sum里,除了乞降(第3行)之外还有互换x和y的值的运算操纵(第4~6行),返回z、x、y(第7行)给main函数的c(第13行)的打印成果(第14行)来看,确切x和y互换了值。
那main函数里的a和b有变更么?a还是12,b还是13么?我们在main函数里在print(c)(第14行)之后增长两条打印语句,分别打印a和b的值(第15、16行),看看a和b变了没?
#define function sum
def sum(x, y):
z = x + y
x = x ^ y
y = x ^ y
x = x ^ y
return z, x, y
#define function main
def main():
a = int(raw_input(plz input a ))
b = int(raw_input(plz input b ))
c = sum(a, b)
print(c)
print(a)
print(b)
#entry of programme
main()运行成果
plz input a 12
plz input b 13
(25, 13, 12)
12
13结论是不影响a和b的值。
调用sum函数时,将a和b的值传递一份给x和y(a和x都指向12地点数据单位)(b和y都指向13地点数据单位),在sum函数里x和y经由过程互换操纵,改变了履行x和y指向的数据单位。
智普教导Python www.jeapedu.com
———————————————————————————————————————————
所有随风而逝的都属于昨天的,所有历经风雨留下来的才是面向未来的。—— 玛格丽特·米切尔 《飘》