On 2020-12-12, Joe Pfeiffer <pfeif...@cs.nmsu.edu> wrote:
> Bischoop <bisch...@vimart.net> writes:
>
>> I've function asking question and comparing it, if is not matching 'yes'
>> it does call itself to ask question again. The problem is that when
>> function is called second time it returns old value or with additional
>> else statement it returns none.
>>
>> Code: https://bpa.st/KVGA
>
> It calls itself again, but what does it return in that case?

I've stated it returns old value that I've input first time, anyway
output is also inluded in a paste but since you've asked:

def question():
    ask = input("Are you OK?:").lower()
        if ask != 'yes':
                question()
                    return ask

                    print (question())

                    #output:
                    Are you OK?:no
                    Are you OK?:no
                    Are you OK?:yes
                    no

                    ---------------------------------------
                    #Another way with 'elif' statment returns none


                    def question():
                        ask = input("Are you OK?:").lower()
                            if ask != 'yes':
                                    question()
                                        elif ask == 'yes':
                                                return ask

                                                print (question())

                                                #output:
                                                Are you OK?:no
                                                Are you OK?:yes
                                                None

                                                #Tried also nested
                                                functions, same results:

                                                def question():
                                                    ask = input("Are you
                                                    OK?:").lower()

                                                        def
                                                        check_question(n):
                                                                if ask
                                                                !=
                                                                'yes':
                                                                            
question()
                                                                                
    else:
                                                                                
                return
                                                                                
                ask

                                                                                
                    m
                                                                                
                    =
                                                                                
                    check_question(ask)
                                                                                
                        print
                                                                                
                        (m)
                                                                                
                        question()

                                                                                
                        #output:
                                                                                
                        Are
                                                                                
                        you
                                                                                
                        OK?:no
                                                                                
                        Are
                                                                                
                        you
                                                                                
                        OK?:yes
                                                                                
                        None

                                                                                
                        Process
                                                                                
                        finished
                                                                                
                        with
                                                                                
                        exit
                                                                                
                        code
                                                                                
                        0

-- 
https://mail.python.org/mailman/listinfo/python-list

Reply via email to