Could someone help me understand the input() function? - eviltoast

I’m currently learning Python and am learning about very basic functions such as int(), float(), and input().

I have the first two down pat, but I’m struggling to understand the last. The example I’m looking at is found at 12:26 of this video:

nam = input('Who are you? ')
print('Welcome', nam)

Who are you? Chuck
Welcome Chuck

In this case, wouldn’t nam be a variable equal to the text on the right side of the = sign?

In which case, if nam is equal to input('Who are you? '), then wouldn’t print('Welcome', nam) just result in

Welcome input(Who are you? )?

Obviously not (nor does it work in a compiler), which leads me to believe I’m clearly misunderstanding something. But I’ve rewatched that section of the video several times, and looked it up elsewhere on the web, and I just can’t wrap my head around it.

Could someone help me with this?

Thanks.

  • EveryMuffinIsNowEncrypted@lemmy.blahaj.zoneOP
    link
    fedilink
    English
    arrow-up
    1
    ·
    edit-2
    5 months ago

    user_number = int(input(‘what’s the number?’))

    But then what’s input('what's the number?') result in? I understand int() and float(), but I can’t wrap my head around what exactly input does to the text within the succeeding parentheses.

     

    Edit: I get it now! Another user helped me understand it, and I get it now! Thank you for your help too! You’re awesome!

    • thisisnotgoingwell@programming.dev
      link
      fedilink
      arrow-up
      2
      ·
      5 months ago

      Yup. You’ll see functions wrapped inside other functions all the time. The function on the inside will run first, then the next, etc.

      In the example I gave, the value of nam is a string. But it you need to perform some mathematical function to it, it needs to be interpreted as a number. So once the value is received, int() will convert it into a number. Finally, that final value will be assigned to nam. Wrapping functions inside of functions is a great way to write concise code.