John Machin sjmac...@lexicon.net (JM) wrote:
JM On Apr 16, 8:14 am, Chris Rebert c...@rebertia.com wrote:
def all_same(lst):
return len(set(lst)) == 1
def all_different(lst):
return len(set(lst)) == len(lst)
JM @ OP: These are very reasonable interpretations of all same and all
Piet van Oostrum p...@cs.uu.nl writes:
John Machin sjmac...@lexicon.net (JM) wrote:
JM On Apr 16, 8:14 am, Chris Rebert c...@rebertia.com wrote:
def all_same(lst):
return len(set(lst)) == 1
def all_different(lst):
return len(set(lst)) == len(lst)
JM @ OP: These are very
On Wed, Apr 15, 2009 at 2:36 PM, Gaurav Moghe moghe...@msu.edu wrote:
Hi,
I am an amateur python user I wanted to know how do I know whether all the
contents of a list are all same or all different? Now, I could certainly
write a loop with a counter. But is there a ready command for that?
Hi Chris,
Thanks for the reply. But I am interested in analysing the contents of just
one list. For example,
list1=[1,2,3,4,5,6]
So, the logical statement would probably be:
if list1==(contains all same values), print SameFalse
if list1==(contains all different values), print Different
On Wed, Apr 15, 2009 at 5:49 PM, Chris Rebert c...@rebertia.com wrote:
On Wed, Apr 15, 2009 at 2:36 PM, Gaurav Moghe moghe...@msu.edu wrote:
Hi,
I am an amateur python user I wanted to know how do I know whether all
the
contents of a list are all same or all different? Now, I could
Thanks! That works!
On Wed, Apr 15, 2009 at 6:14 PM, Chris Rebert c...@rebertia.com wrote:
On Wed, Apr 15, 2009 at 5:49 PM, Chris Rebert c...@rebertia.com wrote:
On Wed, Apr 15, 2009 at 2:36 PM, Gaurav Moghe moghe...@msu.edu wrote:
Hi,
I am an amateur python user I wanted to know
Chris Rebert wrote:
Ah, okay. Then you want:
def all_same(lst):
return len(set(lst)) == 1
def all_different(lst):
return len(set(lst)) == len(lst)
Note that these require all the elements of the list to be hashable.
This solution relies on the object ID -- no hashability required:
On Wed, 15 Apr 2009 23:56:45 +0100, John Posner jjpos...@snet.net wrote:
Chris Rebert wrote:
Ah, okay. Then you want:
def all_same(lst):
return len(set(lst)) == 1
def all_different(lst):
return len(set(lst)) == len(lst)
Note that these require all the elements of the list to be
John Posner wrote:
...This solution relies on the object ID -- no hashability required:
# get list of object-IDs
ids = map(lambda x: id(x), mylist)
# ALL THE SAME? ... test whether average ID matches first ID
sum(ids)/len(ids) == ids[0]
Assuming you really are going for is comparison, how
Scott David Daniels wrote:
Assuming you really are going for is comparison, how about:
max(id(x) for x in mylist) == min(id(x) for x in mylist)
It has the advantage that if [id(x) for x in mylist] = [2N, 1N, 3N],
you get the answer you desire.
Oops -- got me! -John
--
On Apr 16, 8:14 am, Chris Rebert c...@rebertia.com wrote:
On Wed, Apr 15, 2009 at 5:49 PM, Chris Rebert c...@rebertia.com wrote:
On Wed, Apr 15, 2009 at 2:36 PM, Gaurav Moghe moghe...@msu.edu wrote:
Thanks for the reply. But I am interested in analysing the contents of just
one list. For
John Posner jjpos...@snet.net writes:
# get list of object-IDs
ids = map(lambda x: id(x), mylist)
# ALL THE SAME? ... test whether average ID matches first ID
sum(ids)/len(ids) == ids[0]
I don't think you can rely on id's being the same if what
you want is that the values are the
On Wed, Apr 15, 2009 at 8:48 PM, Paul Rubin wrote:
I'd use:
from operator import eq
all_the_same = reduce(eq, mylist)
That won't work for a sequence of more than two items, since after the
first reduction, the reduced value that you're comparing to is the
boolean result:
reduce(eq, [0,
13 matches
Mail list logo