Re: Why does Python show the whole array?

2009-04-09 Thread Lawrence D'Oliveiro
In message , Peter Otten wrote: > Lawrence D'Oliveiro wrote: > >> In message , Gilles Ganault >> wrote: >> >>> test = "t...@gmail.com" >>> isp = ["gmail.com", "yahoo.com"] >>> for item in isp: >>> if test.find(item): >>> print item >>> === output >>> gmail.com >>> yahoo.com >>> === >> >

Re: Why does Python show the whole array?

2009-04-09 Thread John Machin
On Apr 10, 2:36 am, John Posner wrote: > Hrvoje Niksic wrote: > >  >  if test.contains(item)     # would return a Boolean value >  > > >  >> That's a string method, not a function in the string module. > > Oops, of course. > >   import operator >   operator.contains('foo', 'o') > > That's

Re: Re: Re: Why does Python show the whole array?

2009-04-09 Thread John Posner
> Peter Otten wrote: >> Could you explain why you prefer 'contains(belly, beer)' >> or 'belly.contains(beer)' over 'beer in belly'? The last form may be a bit >> harder to find in the documentation, but once a newbie has learned about >> it he'll find it easy to remember. andrew cooke wrote:

Re: Re: Why does Python show the whole array?

2009-04-09 Thread andrew cooke
Peter Otten wrote: > John Posner wrote: > >> Given how common string maniuplations are, I guess I'm surprised that >> Python hasn't yet made "contains()" into both a "string"-module function >> *and* a string-object method. > > Could you explain why you prefer 'contains(belly, beer)' > or 'belly.co

Re: Re: Why does Python show the whole array?

2009-04-09 Thread Peter Otten
John Posner wrote: > Given how common string maniuplations are, I guess I'm surprised that > Python hasn't yet made "contains()" into both a "string"-module function > *and* a string-object method. Could you explain why you prefer 'contains(belly, beer)' or 'belly.contains(beer)' over 'beer in be

Re: Re: Why does Python show the whole array?

2009-04-09 Thread John Posner
Hrvoje Niksic wrote: > if test.contains(item) # would return a Boolean value > >> That's a string method, not a function in the string module. Oops, of course. import operator operator.contains('foo', 'o') That's pretty good, and IMHO a bit better than John Machin's suggestion

Re: Why does Python show the whole array?

2009-04-09 Thread Hrvoje Niksic
John Posner writes: > Q: Has anyone on the python-dev list ever proposed a "string"-module > function that does the job of the "in" operator? Maybe this: > > if test.contains(item) # would return a Boolean value That's a string method, not a function in the string module. If you want a fun

Re: Why does Python show the whole array?

2009-04-09 Thread Tim Rowe
2009/4/9 Miles : > Clearly, any comparison with a boolean literal should be illegal.  ;) Hey, we could have strict type checking at compile time of /all/ operations, couldn't we? Anybody care to join me over at the Ada list? ;-) -- Tim Rowe -- http://mail.python.org/mailman/listinfo/python-list

Re: Why does Python show the whole array?

2009-04-09 Thread John Machin
On Apr 10, 12:35 am, John Posner wrote: > Lawrence D'Oliveiro wrote: > >  > Fine if it only happened once. But it's a commonly-made mistake. At some >  > point you have to conclude that not all those people are stupid, there >  > really is something wrong with the design. > > I think "something wr

Re: Re: Why does Python show the whole array?

2009-04-09 Thread John Posner
Lawrence D'Oliveiro wrote: > Fine if it only happened once. But it's a commonly-made mistake. At some > point you have to conclude that not all those people are stupid, there > really is something wrong with the design. I think "something wrong with the design" is overstating the case a bit, an

Re: Why does Python show the whole array?

2009-04-09 Thread Terry Reedy
Lawrence D'Oliveiro wrote: In message , Gilles Ganault wrote: test = "t...@gmail.com" isp = ["gmail.com", "yahoo.com"] for item in isp: if test.find(item): print item === output gmail.com yahoo.com === This is why conditional constructs should not accept any values other than True a

Re: Why does Python show the whole array?

2009-04-09 Thread Lawrence D'Oliveiro
In message <7e7a386f-d336-4186-822d- c6af0a581...@e38g2000vbe.googlegroups.com>, John Machin wrote: > On Apr 9, 4:53 pm, Lawrence D'Oliveiro central.gen.new_zealand> wrote: > >> This is why conditional constructs should not accept any values other >> than True and False. > > An alternative viewp

Re: Why does Python show the whole array?

2009-04-09 Thread Steven D'Aprano
On Thu, 09 Apr 2009 18:53:13 +1200, Lawrence D'Oliveiro wrote: > This is why conditional constructs should not accept any values other > than True and False. I once tried this: for i in alist.sort(): and got an error I didn't understand because I failed to read the docs. Clearly for loops shou

Re: Why does Python show the whole array?

2009-04-09 Thread Niklas Norrthon
On 9 Apr, 09:49, Miles wrote: > On Thu, Apr 9, 2009 at 2:59 AM, Peter Otten wrote: > > Lawrence D'Oliveiro wrote: > >> This is why conditional constructs should not accept any values other than > >> True and False. > > > So you think > > > if test.find(item) == True: ... > > > would have been bett

Re: Why does Python show the whole array?

2009-04-09 Thread John Machin
On Apr 9, 4:53 pm, Lawrence D'Oliveiro wrote: > In message , Gilles Ganault > wrote: > > > test = "t...@gmail.com" > > isp = ["gmail.com", "yahoo.com"] > > for item in isp: > > if test.find(item): > > print item > > === output > > gmail.com > > yahoo.com > > === > > This is why conditional

Re: Why does Python show the whole array?

2009-04-09 Thread Miles
On Thu, Apr 9, 2009 at 2:59 AM, Peter Otten wrote: > Lawrence D'Oliveiro wrote: >> This is why conditional constructs should not accept any values other than >> True and False. > > So you think > > if test.find(item) == True: ... > > would have been better? Clearly, any comparison with a boolean l

Re: Why does Python show the whole array?

2009-04-09 Thread Peter Otten
Lawrence D'Oliveiro wrote: > In message , Gilles Ganault > wrote: > >> test = "t...@gmail.com" >> isp = ["gmail.com", "yahoo.com"] >> for item in isp: >> if test.find(item): >> print item >> === output >> gmail.com >> yahoo.com >> === > > This is why conditional constructs should not acc

Re: Why does Python show the whole array?

2009-04-08 Thread Lawrence D'Oliveiro
In message , Gilles Ganault wrote: > test = "t...@gmail.com" > isp = ["gmail.com", "yahoo.com"] > for item in isp: > if test.find(item): > print item > === output > gmail.com > yahoo.com > === This is why conditional constructs should not accept any values other than True and False. --

Re: Why does Python show the whole array?

2009-04-08 Thread andrew cooke
Gilles Ganault wrote: > On Wed, 08 Apr 2009 12:11:55 +0200, Ulrich Eckhardt > wrote: >>find() returns the index where it is found or -1 if it is not found. Both >> an >>index>0 or a -1 evaluate to True when used as conditional expression. > > Thanks everyone. I shouldn't have assumed that "if test

Re: Why does Python show the whole array?

2009-04-08 Thread Gilles Ganault
On Wed, 08 Apr 2009 12:11:55 +0200, Ulrich Eckhardt wrote: >find() returns the index where it is found or -1 if it is not found. Both an >index>0 or a -1 evaluate to True when used as conditional expression. Thanks everyone. I shouldn't have assumed that "if test.find(item):" was necessarily enou

Re: Why does Python show the whole array?

2009-04-08 Thread Qilong Ren
Remeber the return value of find function of a string is -1 when it fails, which is True. Try: for item in isp: if item in test: print item From: Gilles Ganault Date: April 8, 2009 5:56:34 PM CST To: python-list@python.org Subject: Why does Python show the whole array?

Re: Why does Python show the whole array?

2009-04-08 Thread Dave Angel
Gilles Ganault wrote: Hello I'd like to go through a list of e-mail addresses, and extract those that belong to well-known ISP's. For some reason I can't figure out, Python shows the whole list instead of just e-mails that match: === script test = "t...@gmail.com" isp = ["gmail.com", "yah

Re: Why does Python show the whole array?

2009-04-08 Thread Ben Finney
Gilles Ganault writes: > I'd like to go through a list of e-mail addresses, and extract those > that belong to well-known ISP's. For some reason I can't figure out, > Python shows the whole list instead of just e-mails that match: > > === script > test = "t...@gmail.com" > isp = ["gmail.com"

Re: Why does Python show the whole array?

2009-04-08 Thread Albert Hopkins
On Wed, 2009-04-08 at 12:01 +0200, Peter Otten wrote: > Gilles Ganault wrote: > > > I'd like to go through a list of e-mail addresses, and extract those > > that belong to well-known ISP's. For some reason I can't figure out, > > Python shows the whole list instead of just e-mails that match: > >

Re: Why does Python show the whole array?

2009-04-08 Thread Ulrich Eckhardt
Gilles Ganault wrote: > test = "t...@gmail.com" > isp = ["gmail.com", "yahoo.com"] > for item in isp: > if test.find(item): > print item > === output > gmail.com > yahoo.com > === > > Any idea why I'm also getting "yahoo.com"? find() returns the index where it is found or -1 if it is not

Re: Why does Python show the whole array?

2009-04-08 Thread Peter Otten
Gilles Ganault wrote: > I'd like to go through a list of e-mail addresses, and extract those > that belong to well-known ISP's. For some reason I can't figure out, > Python shows the whole list instead of just e-mails that match: > > === script > test = "t...@gmail.com" > isp = ["gmail.com",