Path: csiph.com!fu-berlin.de!uni-berlin.de!not-for-mail From: Mark Lawrence Newsgroups: comp.lang.python Subject: Re: The Cost of Dynamism (was Re: Pyhon 2.x or 3.x, which is faster?) Date: Wed, 23 Mar 2016 23:21:38 +0000 Lines: 37 Message-ID: References: <56e44258$0$1598$c3e8da3$5496439d@news.astraweb.com> <8737rvxs89.fsf@elektro.pacujo.net> <56e7483d$0$1608$c3e8da3$5496439d@news.astraweb.com> <56ef9787$0$1516$c3e8da3$5496439d@news.astraweb.com> <56f02196$0$1588$c3e8da3$5496439d@news.astraweb.com> <1458750268.3251250.557690202.04DB2EB3@webmail.messagingengine.com> Mime-Version: 1.0 Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit X-Trace: news.uni-berlin.de ljyzJQ2e38A4batvrU824QOqnxYJCghEafZ46VAMAHnA== Return-Path: X-Original-To: python-list@python.org Delivered-To: python-list@mail.python.org X-Spam-Status: OK 0.002 X-Spam-Evidence: '*H*': 1.00; '*S*': 0.00; 'from:addr:yahoo.co.uk': 0.05; 'character,': 0.07; 'processing,': 0.09; 'received:80.91': 0.09; 'received:80.91.229': 0.09; 'received:gmane.org': 0.09; 'received:list': 0.09; 'subject:which': 0.09; 'python.': 0.11; 'wed,': 0.15; '(something': 0.16; '23,': 0.16; 'character).': 0.16; 'received:194.126': 0.16; 'received:80.91.229.3': 0.16; 'received:io': 0.16; 'received:plane.gmane.org': 0.16; 'received:psf.io': 0.16; 'subject:?)': 0.16; 'wrote:': 0.16; 'string': 0.17; 'duplicate': 0.18; 'skip': 0.18; 'language': 0.19; '>>>': 0.20; 'lawrence': 0.22; '(where': 0.23; 'header:In-Reply- To:1': 0.24; "i've": 0.25; 'header:User-Agent:1': 0.26; 'header:X -Complaints-To:1': 0.26; 'rest': 0.26; "skip:' 10": 0.28; 'thinks': 0.29; 'url:activestate': 0.29; 'character': 0.29; "i'm": 0.30; "i'd": 0.31; 'language.': 0.32; "he's": 0.33; 'surely': 0.33; 'url:code': 0.34; 'behind': 0.35; 'could': 0.35; 'quite': 0.35; 'needed': 0.36; "wasn't": 0.36; 'to:addr:python-list': 0.36; 'subject:: ': 0.37; 'really': 0.37; 'received:org': 0.37; 'doing': 0.38; "won't": 0.38; 'why': 0.39; 'goes': 0.39; 'sure': 0.39; 'to:addr:python.org': 0.40; 'mark': 0.40; 'subject:The': 0.61; 'received:194': 0.61; 'charset:windows-1252': 0.62; 'complete': 0.63; 'our': 0.64; 'mar': 0.65; 'url:lists': 0.66; 'fast?': 0.84; 'pythonistas,': 0.84; 'dennis': 0.91 X-Injected-Via-Gmane: http://gmane.org/ X-Gmane-NNTP-Posting-Host: 248.80.126.194.pool.dsl.daisyplc.net X-Mozilla-News-Host: news://news.gmane.org User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:38.0) Gecko/20100101 Thunderbird/38.7.0 In-Reply-To: <1458750268.3251250.557690202.04DB2EB3@webmail.messagingengine.com> X-BeenThere: python-list@python.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: General discussion list for the Python programming language List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Xref: csiph.com comp.lang.python:105574 On 23/03/2016 16:24, Random832 wrote: > > > On Wed, Mar 23, 2016, at 12:08, Mark Lawrence wrote: >>> And doing it 'Pythonically' can lead to suggestions such as the >>> following the other day: >>> >>> c, psource = psource[0], psource[1:] >>> >>> (where psource is a very long string), which even I could tell, from >>> knowing what goes on behind the scenes, wasn't going to work well >>> (duplicating the rest of the string roughly every other character). >>> >> >> It would work perfectly. How would it duplicate the rest of the string >> roughly every other character? > > Er, I think he's suggesting that this would be in an inner loop > (something like while psource: c, psource = psource[0], psource[1:]). > What I'm not sure of is why he thinks this is pythonic. > It was in response to Dennis Lee Bieber http://code.activestate.com/lists/python-list/700242/. Quite why he thinks it won't work well I've no idea. I'd have said it was Pythonic, as slicing is a standard idiom. As for every other character, it again shows his complete ignorance of Python. Although thinking about it, it you were to skip every character that needed processing, surely that would be really fast? -- My fellow Pythonistas, ask not what our language can do for you, ask what you can do for our language. Mark Lawrence