I'm currently doing Dr. Charles Severence's lessons on FreeCodeCamp to try to learn Python3. I'm on lesson exercise 02_03 and confused about multiplying floating-point and integer values.
The goal is to write a Python program multiplying hours worked by pay rate to come up with a pay quantity.
This is the code I wrote:
h = input("Enter hours: ")
r = input("Enter pay rate: ")
p = float(h) * r
I got a traceback error, and the video said the correct way to solve said error was change Line 3 from p = float(h) * r
to p = float(h) * float(r)
.
However, what I'm confused about is why would I need to change r
to a floating-point value when it's already a floating-point value (since it'd be a currency value like 5.00 or something once I typed it in per the input()
command*?
What am I missing here?
*I can't remember: are the individual commands in a python line called "commands"?
Edit: Wrote plus signs in my post here instead of asterisks. Fixed.
EDIT: Thanks to @Labna@lemmy.world and @woop_woop@lemmy.world. I thought that the input()
function was a string until the end-user types something in upon being prompted, and then becomes a floating-point value or integer value (or stays a string) according to what was typed.
This is incorrect: the value is a string regardless of what is typed unless it is then converted to another type.
There's a certain point where it just comes down to trust. And if you distrust a company enough that you think they aren't posting the same code to the git repository that they say they are, then maybe that's when you shouldn't be doing business with them.
This is the case with all organizations, corporate or otherwise.