## Welcome to the Treehouse Community

The Treehouse Community is a meeting place for developers, designers, and programmers of all backgrounds and skill levels to get support. Collaborate here on code errors or bugs that you need feedback on, or asking for an extra set of eyes on your latest project. Join thousands of Treehouse students and alumni in the community today. (Note: Only Treehouse students can comment or ask questions, but non-students are welcome to browse our conversations.)

### Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and a supportive community. Start your free trial today. # Different approach to asking number of tickets, very weird result. I fixed it, but I don't understand what was wrong!

Instead of num_tickets etc. etc. I did:

ticket_amount = int(input("Hello {}, how many tickets would you like? ".format(name))) total_cost = TICKET_PRICE * ticket_amount print("{} tickets at \${} each will cost \${}".format(ticket_amount, TICKET_PRICE, total_cost))

When I entered 25 tickets in the console the result calculated was 25252525252525252525 (25 Repeated 10 times) It seems it multiplied the string "25" ten times. So I figured to make total_cost an int out the gate. I wrapped total_cost in an int like so: total_cost = int(TICKET_PRICE * ticket_amount) That didn't help.

Finally I wrapped the constant at the beginning of the script in an int like so: TICKET_PRICE = int(10) This was the solution, but wasn't TICKET_PRICE an int to begin with? Very confused... Hey Keith, The First thing is to learn markdown basics, so you can have proper formatting, I think I might have understood the problem you are facing, but I need to see your code.

You can learn it here Instead of num_tickets etc. etc. I did:

```ticket_amount = int(input("Hello {}, how many tickets would you like? ".format(name)))
total_cost = TICKET_PRICE * ticket_amount print("{} tickets at \${} each will cost \${}".format(ticket_amount, TICKET_PRICE, total_cost))
```

When I entered 25 tickets in the console the result calculated was 25252525252525252525 (25 Repeated 10 times) It seems it multiplied the string "25" ten times. So I figured to make total_cost an int out the gate. I wrapped total_cost in an int like so:

```total_cost = int(TICKET_PRICE * ticket_amount)
```

That didn't help. Finally I wrapped the constant at the beginning of the script in an int like so:

``` TICKET_PRICE = int(10)
```

This was the solution, but wasn't TICKET_PRICE an int to begin with? Very confused.. Ok, I think I identified your problem but your code provided here is still confusing and incomplete, anyways.

```ticket_amount = int(input("Hello {}, how many tickets would you like? ".format(name)))

total_cost = TICKET_PRICE * ticket_amount

print("{} tickets at \${} each will cost \${}".format(ticket_amount, TICKET_PRICE, total_cost))
```

The only possible problem according to me is in `ticket_amount`.

```ticket_amount = int(input("Hello {}, how many tickets would you like? ".format(name)))
```

what I was confused with is that the `ticket_amount` provided by you is absolutely correct, there is no error in it but if your `ticket_amount` was missing that `int` before input then that was incorrect and would give the exact problem you are facing.

``` ticket_amount = input("Hello {}, how many tickets would you like? ".format(name)
```

You said that you wrapped your `total_cost` and `TICKET_PRICE` with `int` so it solved your problem BUT actually that did not change anything and neither it solved your problem, I want you to try something right now, I want you to try this and tell me if it worked, the code below;

```TICKET_PRICE = 10 #REMOVE THE INT because you don't need an int, TICKET_PRICE is already an int

ticket_amount = int(input("Hello {}, how many tickets would you like? ".format(name))) #Insert int here

total_cost = TICKET_PRICE * ticket_amount #remove int from here

print("{} tickets at \${} each will cost \${}".format(ticket_amount, TICKET_PRICE, total_cost))
```

I want you to try this code and I strongly believe you forgot to add an `int` to your `ticket_amount`. and that was the problem nothing else.

The question is WHY do we get "2525252525252552" 10 times?

```TICKET_PRICE = 10

ticket_amount = input("Hello, how many tickets would you like?")  #REMOVED int here

total_cost = TICKET_PRICE * ticket_amount

print("Total cost is {}".format(total_cost))

#Running this code in the console

# >>>  Hello, how many tickets would you like? 25

# >>> Total cost is 25252525252525252525
```

Now correction

```TICKET_PRICE = 10

ticket_amount = int(input("Hello, how many tickets would you like?"))  #INSERTED int here

total_cost = TICKET_PRICE * ticket_amount

print("Total cost is {}".format(total_cost))

#Running this code in the console

# >>> Hello, how many tickets would you like? 25

# >>> Total cost is 250
```

The `ticket_amount` in the first example is taking the input as a `str` so what is actually happening is this;

```total_cost = 10 * "25" #25 is a string here

#output >>> 25252525252525252525
```

In the second example

```total_cost = 10 * 25 #25 is an int here

#output >>> 250
```

There is a function where you can check to see if an object is a `str` or an `int`.

```print(isinstance(total_cost,str))

#output >>> False
```

the function `isinstance` takes basically 2 arguments, the first argument is to check if that belongs to the second argument, so in this case, I did, Does the total_cost belong to a string? and the program tells me "FALSE" meaning no. You should play around with your code ALOT to understand the nature of how python or programming works.