On Fri, Jan 02, 2015 at 06:51:16AM -0500, Brandon Dorsey wrote: > On Fri, Jan 2, 2015 at 6:34 AM, Steven D'Aprano <st...@pearwood.info> wrote: > > > The thing to remember is that *commas*, not parentheses, are used for > > making tuples. The round brackets are just for grouping. > > > > That's what I was confused about. I didn't realize commas defined tuples, > not parentheses. Is this the case > for list and dictionaires as well?
No. x = 1, 2 y = 1, 2 cannot make a tuple for x and a list for y. How would the compiler know which you wanted? The syntax for lists: [a, b, c, ... ] requires the square brackets. You must have a comma between items, and optionally after the last item. That makes it easy to add new items to large lists without worrying about keeping the last item special. Here's an example from some code of mine: PRIMES = [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97, 101, 103, 107, 109, 113, ] Now I can add or remove lines without bothering to remove the comma from the very last line. If there are no items, you can't use a comma: x = [,] is a syntax error. Likewise for dicts, and in Python 3, sets: d = {1:'a', 2:'b'} s = {1, 2, 3} # set syntax is Python 3 only It is the curly brackets { } that tell Python you're creating a dict or set, not the commas. The commas separate items, that is all. -- Steven _______________________________________________ Tutor maillist - Tutor@python.org To unsubscribe or change subscription options: https://mail.python.org/mailman/listinfo/tutor