Path: csiph.com!usenet.pasdenom.info!weretis.net!feeder4.news.weretis.net!ecngs!feeder2.ecngs.de!newsfeed.freenet.ag!news2.euro.net!newsgate.cistron.nl!newsgate.news.xs4all.nl!post.news.xs4all.nl!not-for-mail Return-Path: X-Original-To: python-list@python.org Delivered-To: python-list@mail.python.org X-Spam-Status: OK 0.004 X-Spam-Evidence: '*H*': 0.99; '*S*': 0.00; 'example:': 0.03; 'received:80.91': 0.09; 'received:80.91.229': 0.09; 'received:gmane.org': 0.09; 'received:list': 0.09; 'subject:python': 0.11; 'value.': 0.15; 'message- id:@post.gmane.org': 0.16; 'received:80.91.229.3': 0.16; 'received:plane.gmane.org': 0.16; 'subject:3.3': 0.16; 'typo.': 0.16; '(or': 0.18; 'explicit': 0.22; 'this:': 0.23; 'header:User- Agent:1': 0.26; 'values': 0.26; 'wondering': 0.26; 'checking': 0.27; 'header:X-Complaints-To:1': 0.28; 'subject:list': 0.28; 'faster,': 0.29; 'received:132': 0.29; 'writes:': 0.29; "i'm": 0.29; 'figure': 0.30; 'could': 0.32; 'zero': 0.33; 'to:addr :python-list': 0.33; 'skip:b 20': 0.34; 'minimum': 0.34; 'list': 0.35; 'received:org': 0.36; 'really': 0.36; 'but': 0.36; 'charset :us-ascii': 0.36; 'subject:: ': 0.38; 'positive': 0.38; 'fact': 0.38; 'sure': 0.38; 'to:addr:python.org': 0.39; 'header:Received:5': 0.40; 'your': 0.60; 'treat': 0.65; 'subject:Min': 0.84 X-Injected-Via-Gmane: http://gmane.org/ To: python-list@python.org From: Wolfgang Maier Subject: Re: Finding the Min for positive and negative in python 3.3 list Date: Tue, 12 Mar 2013 18:13:14 +0000 (UTC) References: Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Gmane-NNTP-Posting-Host: sea.gmane.org User-Agent: Loom/3.14 (http://gmane.org/) X-Loom-IP: 132.230.1.31 (Mozilla/5.0 (Windows NT 6.1; rv:19.0) Gecko/20100101 Firefox/19.0) X-BeenThere: python-list@python.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: General discussion list for the Python programming language List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Newsgroups: comp.lang.python Message-ID: Lines: 38 NNTP-Posting-Host: 2001:888:2000:d::a6 X-Trace: 1363112013 news.xs4all.nl 6907 [2001:888:2000:d::a6]:58531 X-Complaints-To: abuse@xs4all.nl Xref: csiph.com comp.lang.python:41146 Wolfgang Maier biologie.uni-freiburg.de> writes: > > Norah Jones gmail.com> writes: > > > > > For example: > > a=[-15,-30,-10,1,3,5] > > I want to find a negative and a positive minimum. > > example: negative > > print(min(a)) = -30 > > positive > > print(min(a)) = 1 > > > > > > > > try this: > min(a) => -30 > min([n for n in a if n>0]) => 1 > > of course, you have to figure out what you want to do with a zero value. > > the i above has to be an n, of course, sorry for that typo. by the way, if you need both values and your list is really huge, an explicit for loop checking each number whether it's the current negative and positive minimum might be faster, but that would have to be tested. Also, I'm wondering whether you could somehow exploit the fact that if your list contains 0 (or 1 depending on how you want to treat zero values) you have for sure found the minimum for your positive numbers?