The three types you've seen so far are interster and float, turns out you can convert between them as follows. I'm going to take the number three and I'm going to call something called sturd, that gives me back a string of length one contained in the letter three, I can assign this to a variable. Three is the string contained in the letter three. Since it's a string, I can multiply it by whatever I like. Let's make 77 3's, just for the fun of it. As you might guess, I can go the other direction. If I have five copies of this string three. In other words, a string of link five containing five letter 3's. Then, I can take that and I can turn it into an int. There we go, 33,333. I can even use the result of that and convert it back to a string. Giving me what I would have gotten if I had just multiplied three by five. I can also convert floats to strings. If I use INT on a string containing several digits, then I can get back that integer by extracting that value from the string. I can also. Do the same thing with a float. Notice that I gave float a string containing letters that form an int and it turned that into a floating point number. I have to be a little bit careful if I call int on a string that has things other than digits in it, I'm actually going to get an error. Here, forever all I'm going to get is a value ever, invalid literal for int with base ten, I have seven apples. That's just announcing that Python was unable to do the conversion. A motivation for one thing is, this is that, if I call input, say, tell me the number of shoes. And the user types, say, 863 shoes is the number they want. I get back a string if my shoe store has only 627 shoes left then I can't right now compare the string 863 to the number 627. The solution here is to take the result of what the user types and turn it into an int. Save it in a variable and now I can do my comparison. Are there enough shoes left in order to satisfy my customer? And the answer is no.