Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #85441

Re: TypeError: list indices must be integers, not tuple

From Mark Lawrence <breamoreboy@yahoo.co.uk>
Subject Re: TypeError: list indices must be integers, not tuple
Date 2015-02-10 11:35 +0000
References <dcae1673-8fe1-4734-90ce-682b8d4e6063@googlegroups.com> <CAM8kh5sJ4Hiu08pn5xcLP1SQm2rpy+dvtUZWU9LGaYQfh4RdFQ@mail.gmail.com>
Newsgroups comp.lang.python
Message-ID <mailman.18606.1423568173.18130.python-list@python.org> (permalink)

Show all headers | View raw


On 10/02/2015 00:05, Ryan Stuart wrote:
> Hi,
>
> There is a lot of issues with this code. First, setting fav to a 1
> tuples with a string probably isn't what you want. What you probably
> mean is:
>
> if restraunt == ("Pizza"):
>      fav = 1
>
> Second, when you are trying to lookup items in Menu, you are using the
> incorrect fav. Lists have int indicies (just like the error points out).
> Values like ("1") aren't integers.
>
> Thirdly, Menu is a list of lists. To fetch "Barbeque pizza" from Menu,
> you need to do Menu[0][0], not Menu[0, 0].
>
> Finally, Python comes with a style guide which you can find in pep8
> <https://www.python.org/dev/peps/pep-0008/>. Your code violates that
> guide in many places. It might be worth working through the Python
> Tutorial <https://docs.python.org/3.4/tutorial/>.
>
> Cheers
>
> On Tue Feb 10 2015 at 9:55:40 AM <james8booker@hotmail.com
> <mailto:james8booker@hotmail.com>> wrote:
>
>     import random
>     RandomNum = random.randint(0,7)
>     restraunt = raw_input("What's your favourite takeaway?Pizza,
>     Chinease or Indian?")
>     if restraunt == ("Pizza"):
>          fav = ("1")
>
>     elif restraunt == ("Chinease"):
>          fav = ("2")
>
>     elif restraunt == ("Indian"):
>          fav = ("3")
>
>     else:
>          print("Try using a capital letter, eg; 'Chinease'")
>
>     Menu = [["Barbeque
>     pizza","Peparoni","Hawain"],["__Curry","Noodles","Rice"],["__Tika
>     Masala","Special Rice","Onion Bargees"]]
>
>     print Menu[fav,RandomNum]
>                         ^
>     TypeError: list indices must be integers, not tuple
>
>     How do I set a variable to a random number then use it as a list
>     indece, (I'm only a student in his first 6 months of using python)
>     --
>     https://mail.python.org/__mailman/listinfo/python-list
>     <https://mail.python.org/mailman/listinfo/python-list>
>

If you can show me a one tuple anywhere in the original code I'll 
happily buy you a tipple of your choice.

Also please don't top post here, it makes following long threads 
difficult if not impossible to follow, thanks.

-- 
My fellow Pythonistas, ask not what our language can do for you, ask
what you can do for our language.

Mark Lawrence

Back to comp.lang.python | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

TypeError: list indices must be integers, not tuple james8booker@hotmail.com - 2015-02-09 15:52 -0800
  Re: TypeError: list indices must be integers, not tuple Ethan Furman <ethan@stoneleaf.us> - 2015-02-09 16:02 -0800
  Re: TypeError: list indices must be integers, not tuple Dave Angel <davea@davea.name> - 2015-02-09 22:05 -0500
  Re: TypeError: list indices must be integers, not tuple Dave Angel <davea@davea.name> - 2015-02-09 23:48 -0500
  Re: TypeError: list indices must be integers, not tuple Terry Reedy <tjreedy@udel.edu> - 2015-02-10 00:57 -0500
  Re: TypeError: list indices must be integers, not tuple Ryan Stuart <ryan.stuart.85@gmail.com> - 2015-02-10 00:05 +0000
  Re: TypeError: list indices must be integers, not tuple Mark Lawrence <breamoreboy@yahoo.co.uk> - 2015-02-10 11:35 +0000
  Re: TypeError: list indices must be integers, not tuple Dave Angel <davea@davea.name> - 2015-02-10 09:28 -0500
  Re: TypeError: list indices must be integers, not tuple Mark Lawrence <breamoreboy@yahoo.co.uk> - 2015-02-10 14:32 +0000
  Re: TypeError: list indices must be integers, not tuple Chris Angelico <rosuav@gmail.com> - 2015-02-11 01:33 +1100
  Re: TypeError: list indices must be integers, not tuple Dave Angel <davea@davea.name> - 2015-02-10 10:51 -0500
  Re: TypeError: list indices must be integers, not tuple Chris Angelico <rosuav@gmail.com> - 2015-02-11 05:48 +1100
  Re: TypeError: list indices must be integers, not tuple Dave Angel <davea@davea.name> - 2015-02-10 15:38 -0500

csiph-web