very Very VERY dumb Question About The new Set( ) 's

  • Thread starter Raymond Arthur St. Marie II of III
  • Start date
R

Raymond Arthur St. Marie II of III

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
(e-mail address removed)
 
A

Alan Gauld

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
 
C

Carl Banks

Alan said:
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).
 
I

Inyeol Lee

]
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
 
R

Raymond Hettinger

Since both dictionaries and Sets require unique members/keys,
+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
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,733
Messages
2,569,439
Members
44,829
Latest member
PIXThurman

Latest Threads

Top