P: n/a very Very VERY dumb ? about the new Set( ) 's Please be kind and read this like you know I've been up 33-34 hours reading PEP's but... Doc\ref 2.6 Delimiters show's three unused characters "@ $?". @ sort of looks like and sort of sounds like a set an$ well sort of obvious. I can imagine that the $would be confused for money and @ is ugly. You folks have prob'ly been all over this. Even thou I've been using Python since 1.4, I only joined the comp.lang.python a couple weeks ago so I don't know the flame wars over the Set implimentation. Ray St. Marie --- Afraid to sign his name to this one Ra****@aol.bomB Jul 18 '05 #1 Share this Question 4 Replies  P: n/a On 23 Jul 2003 18:47:32 GMT, ra****@aol.commorespam (Raymond Arthur St. Marie II of III ) wrote: Doc\ref 2.6 Delimiters show's three unused characters "@$ ?". @ sort of looks like and sort of sounds like a set an $well sort of obvious. I can imagine that the$ would be confused for money and @ is ugly. Since I detest any thought of prefix symbols to indicate type(as per Perl etc) but have no visibility of these debates, I'll throw in my suggestion and done a flameproof suit! Since both dictionaries and Sets require unique members/keys, why not use the dictionary braces but without the key/value syntax. So: mySet = {1,2,3,4} Which is illegal for a dictionary but would be OK for a Set. It also just happens to be the same delimiters used in math for sets... Just a thought before I go to bed! :-) Alan G. Author of the Learn to Program website http://www.freenetpages.co.uk/hp/alan.gauld Jul 18 '05 #2
 P: n/a Alan Gauld wrote: On 23 Jul 2003 18:47:32 GMT, ra****@aol.commorespam (Raymond Arthur St. Marie II of III ) wrote: Doc\ref 2.6 Delimiters show's three unused characters "@ $?". @ sort of looks like and sort of sounds like a set an$ well sort of obvious. I can imagine that the $would be confused for money and @ is ugly. Since I detest any thought of prefix symbols to indicate type(as per Perl etc) but have no visibility of these debates, I'll throw in my suggestion and done a flameproof suit! Since both dictionaries and Sets require unique members/keys, why not use the dictionary braces but without the key/value syntax. So: mySet = {1,2,3,4} Which is illegal for a dictionary but would be OK for a Set. It also just happens to be the same delimiters used in math for sets... Just a thought before I go to bed! :-) +1 if Python's parser could handle it (which seems dubious). -- CARL BANKS Jul 18 '05 #3  P: n/a On Thu, Jul 24, 2003 at 10:31:11PM +0000, Alan Gauld wrote: [...] Since both dictionaries and Sets require unique members/keys, why not use the dictionary braces but without the key/value syntax. So: mySet = {1,2,3,4} Which is illegal for a dictionary but would be OK for a Set. It also just happens to be the same delimiters used in math for sets... See PEP 218. It describes a long term plan to make set builtin type, including syntax for constant set {1,2,3,4} and empty set {-}. Inyeol Jul 18 '05 #4  P: n/a > > Since both dictionaries and Sets require unique members/keys, why not use the dictionary braces but without the key/value syntax. So: mySet = {1,2,3,4} Which is illegal for a dictionary but would be OK for a Set. It also just happens to be the same delimiters used in math for sets... +1 if Python's parser could handle it (which seems dubious). FWIW, I think the easiest and most readable syntax is: mySet = set(1, 2, 3, 4) BTW, this is a bit reminiscent of the discussion about a syntax for entering fixed decimals. After much discussion, someone realized the obvious and noted that real programs mostly take in their fixed point data from external sources and would rarely appear as a constant in a program; hence, there was no need for a special syntax -- just Decimal(data) would do the trick. (Think about a program like Quicken for checkbook accounting -- none of the check/deposit amounts are known in advance so the program is unlikely to contain any fixed decimal constants except zero and$0.01). Raymond Hettinger Jul 18 '05 #5