Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
265 views
in Technique[技术] by (71.8m points)

if statement - Why does this Python function only have one output?

I have this very simple Python function, but there is one part I am confused about. The function is called bigger and it takes two numbers as inputs and outputs the bigger number. (I could only use if statements, no elses)

Here's the code:

def bigger(x, y):
    if x > y:
        return x
    return y

I would think that this code would return y if y is bigger (which it does), but it would return x and y if x is bigger (it only returns x). Why does it only return one output? Can Python functions only have one output?

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

The return statement not only returns a value, but also terminates the current function and returns control to the calling function. So, this function will only return a single value. In my opinion it would be slightly more clear to write this:

def bigger(x, y):
    if x > y:
        return x
    else:
        return y

but the result would not differ.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...