this post was submitted on 12 Jun 2024
42 points (93.8% liked)

Python

6356 readers
10 users here now

Welcome to the Python community on the programming.dev Lemmy instance!

📅 Events

PastNovember 2023

October 2023

July 2023

August 2023

September 2023

🐍 Python project:
💓 Python Community:
✨ Python Ecosystem:
🌌 Fediverse
Communities
Projects
Feeds

founded 1 year ago
MODERATORS
 

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.

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 5 points 5 months ago (1 children)

You’re setting ‘nam’ to whatever the output of the function called ‘input’ is. The string asking who are you is an argument to the ‘input’ function. What that function does happens to be that it prints its argument out to the console, waits for the user to enter text, and returns whatever text was entered as its output. I would recommend actually trying out the code and playing around with it if you want to understand it better.

The other two functions you mentioned work similarly. The output of the function named ‘int’ is a new integer. Usually you will give it a number as an argument to set the value of that integer.

[–] [email protected] 1 points 5 months ago

"The other two functions work similarly" noo I wouldn't say that! :D On a very abstract way, maybe. But especially to a beginner, they don't. One just processes it's input a bit (casting) while the other displays text, reads from stdin, etc.

I believe OPs confusion stems exactly from presuming strong similarities between all functions, while only float() and int() are similar and input() being a completely different thing (relatively speaking..)