On 15 October 2012 20:51, Chris Angelico <ros...@gmail.com> wrote:

> On Tue, Oct 16, 2012 at 6:28 AM, Mark Lawrence <breamore...@yahoo.co.uk>
> wrote:
> > I like clearly written code like this
> >
> > "
> > d = {}
> > for c in (65, 97):
> >     for i in range(26):
> >         d[chr(i+c)] = chr((i+13) % 26 + c)
> >
> > print "".join([d.get(c, c) for c in s])
>
> Surely there's a shorter way to rot13 a piece of text? CODE GOLF!
>
> At very least, a single cryptic expression in place of your nice clear
> loops MUST be an improvement.
>
> d = dict((chr(i+c),chr((i+13)%26+c))for i in range(26)for c in(65,97))
>
> And with superfluous spaces removed like that, it takes 0.02
> jiggawatts less power in DeLorean Python.
>



> print("".join(chr([[ł,(ł+21)%26+96],[ł%26+65]][64<ł<91][96<ł<123])for ł in
> map(ord,s)))


That was fun. Remember, Unicode has more characters, so you can fit more
code in less space.

<*Oh God, what have I done?!>*
-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to