lupin at orcon.net.nz
Mon Mar 9 00:13:11 CET 2009
Given that board is a function then I believe that it is likely you're
either (a) doing something wrong beforehand, or (b) if board is a
function that generates the Tic Tac Toe board, then the syntax you more
likely need is board()[number] , but I can't be completely certain.
when I say doing something wrong beforehand, I'm thinking you might be
accidentally giving the funtion a new name, instead of assigning it's
return value to a variable,
newname = functionname //see here, no brackets on the end of the
function, this basically tells python that newname is also functionname.
variable = functionReturningValue() //and here, the function's return
value is obviously being assigned to the variable
Disclaimer: My naming scheme sucks, I know this :)
John Fouhy wrote:
> 2009/3/9 WM. <wferguson1 at socal.rr.com>:
>> File "C:\Python26\TicTacToeD.py", line 68, in DisplayBoard
>> print "\n\t", board, "|", board, "|", board
>> TypeError: 'function' object is unsubscriptable
>> I am fooling around with Dawson's "...for the Absolute Beginner". The
>> tic-tac-toe program will not run for me. I'm guessing a typi somewhere, but
>> cannot find it.
> "subscript" means "a thing in square brackets after a name". You've
> got three subscripts in that line: board, board, and board.
> The error means that you're trying to use square brackets after
> something that doesn't support them. It's telling you that 'board' is
> a function (as opposed to a list or a dict, for example) and functions
> don't support .
> Possibly you're meant to call board:
> print "\n\t", board(1), "|", board(2), "|", board(3)
> Or, alternatively, you may have assigned to it by mistake somewhere.
More information about the Tutor