Reputation: 1641
Hi am new to python found this code in one book and wanted to try it but line 4 says its an error "encountered type when expecting one of the following and a list of brackets. How to fix it?
#: arrays/PythonLists.py
aList = [1, 2, 3, 4, 5]
print type(aList) # <type 'list'>
print aList # [1, 2, 3, 4, 5]
print aList[4] # 5 Basic list indexing
aList.append(6) # lists can be resized
aList += [7, 8] # Add a list to a list
print aList # [1, 2, 3, 4, 5, 6, 7, 8]
aSlice = aList[2:4]
print aSlice # [3, 4]
class MyList(list): # Inherit from list
# Define a method, 'this' pointer is explicit:
def getReversed(self):
reversed = self[:] # Copy list using slices
reversed.reverse() # Built-in list method
return reversed
list2 = MyList(aList) # No 'new' needed for object creation
print type(list2) # <class '__main__.MyList'>
print list2.getReversed() # [8, 7, 6, 5, 4, 3, 2, 1]
#:~
Upvotes: 0
Views: 257
Reputation: 4723
You are using Python 3.x, where print
is a function and no longer a statement. The book is written for Python 2.x, where print still is a statement.
You fix it by using a version of Python that matches what the book describes, or get a book for a newer version of Python (3.x).
Your immediate problem can be solved by writing
print (type(aList))
Upvotes: 4