 Up till now we've talked about three data types, integers, floats, and strings. Sometimes you'll need to convert among these data types. For example, you might have the number 37.9, and you just want the integer part of it. The int function does that for you. If I say int of 37.9, I get just 37. This does not round up or down, it just gets rid of the entire decimal part. So if I say int of negative 23.5, I'll end up with negative 23. Int will also convert strings to integers. If I say int of 2245, the string, I get back the number 245. I can show that by saying, what's the type of int 245? It's no longer a string, it's class int. What happens if I try to convert something that isn't an integer, like the word 20 to integer? The answer, it's a runtime error. What if I try to take the integer of something that begins with an integer, but then has other stuff? Again, also a runtime error. Float will convert integers to float. If I say float 25, I get 25.0. This is not normally necessary. I don't have to say float of 25 plus 4.3 to do an addition such as this. I can say 25 plus 4.3 and the integer 25 will be promoted to float, and it'll work exactly as I need. Most of the time you'll be using float to convert strings to float. If you say float 37.4, you get the numeric value. You can do this with exponential notation as well. Float of 7e2 gives you 700.0. And as with int, if you take something that's not valid, you get a runtime error. You'll often have to go the other way. You'll need to convert a float or an int into a string. That's what the str function does. If I take string of 23.4, I get the string 23.4. That's a string. It's no longer a float. String of negative 45 gives me negative 45. And string of 7.3e4 gives me 7300.0. Again, that's a string. It is not a number. You can't treat it as a number. If I try to say string of 23.4 plus 5.2, it'll say runtime error. You can't do that. You can't add strings to floats.