Arsip

Posts Tagged ‘return value’

[Python] Return a or b or c

Apakah yang akan dilakukan fungsi ini:

def foo(a, b, c):
    return a or b or c
def bar(a, b, c):
    return a and b and c

Jika diberi input seperti ini:

foo(1, 2, 3)  # 1
bar(1, 2, 3)  # 2
foo('', None, 'pret')  # 3
bar('', None, 'pret')  # 4

Yak benar, si python bakal memberikan hasil sebagai berikut:

1 # 1
3 # 2
'pret' # 3
''  # 4

Mudah dipahami bahwa fungsi foo akan mengembalikan nilai pertama yang bernilai True dan fungsi bar akan mengembalikan nilai terakhir yang bernilai True sebelum ketemu nilai False.
Atau lebih mudahnya, akan mengembalikan nilai terakhir ketika ekspresi bernilai True
Menarik bukan? Minimal menurut saya (soalnya baru nemu).

Iklan
Kategori:Python Tag:, , ,
%d blogger menyukai ini: