aklei...@sonic.net wrote: > Part of a previous post: > """ > Here's the style I'd use: > > combos = { > 0: 'id', > 2: 'country', > 3: 'type', > 5: 'lat', > 6: 'lon', > 12: 'name', > } > > Put each entry on its own line, indented by two spaces, and leave a > trailing comma on the last entry. The latter is especially important > in sequences of strings to prevent them from being > "silently"<=>"concatenated" if you were to add an entry and forget the > comma. > """ > > When I first saw this I thought it would lead to a syntax error so tried > it out.. > Then played with it to try to recreate the '"silently"<=>"concatenated"' > problem but couldn't. I like this syntax because it avoids the syntax > error if the comma is omitted when adding an entry but I don't understand > the (potential) concatenation problem. > > Could you explain please?
Consider the following list: >>> ["the" ... "quick", ... "brown" ... "fox"] ['thequick', 'brownfox'] "the" and "quick" look like two entries in the list, but as the comma is missing they are merged together. Same for "brown" and "fox". I think you cannot run into this problem with dictionaries as accidentally merging a value and a key would result in a syntax error at the second colon: >>> {"the": "quick" ... "brown": "fox"} File "<stdin>", line 2 "brown": "fox"} ^ SyntaxError: invalid syntax _______________________________________________ Tutor maillist - Tutor@python.org To unsubscribe or change subscription options: http://mail.python.org/mailman/listinfo/tutor