why it append one more letter after decode?

Ho Yeung Lee jobmattcon at gmail.com
Sun Oct 29 23:03:46 EDT 2017


i discover when 
it 
decode("\\",1,2)
in interactive console
is [

but decode in big project
it see as
decode(r"\\",1,2)
[[

it double

On Monday, October 30, 2017 at 9:51:01 AM UTC+8, Ho Yeung Lee wrote:
> if run these function to decode in python interactive console,
> it can decode correct, 
> 
> but when run with a big project, it append a letter Y
> 
> 
> On Monday, October 30, 2017 at 9:48:36 AM UTC+8, Ho Yeung Lee wrote:
> > def leftrotate(l, n):
> >     return l[n:] + l[:n]
> > 
> > def rightrotate(l, n):
> >     return l[-n:] + l[:-n]
> > 
> > def encode(s, k, kk):
> >     l = [ord(i) for i in s]
> >     return leftrotate(''.join([chr(i + k) for i in l]), kk)
> > 
> > def decode(s, k, kk):
> >     l = [ord(i) for i in rightrotate(s, kk)]
> >     return ''.join([chr(i - k) for i in l])
> > 
> > 
> > yesterday i add above code and run it with batch file 
> > it can decode a correct password
> > 
> > then i install cx_freeze to produce executable file
> > 
> > but today when i run it, i see the source of encrypted password is correct
> > but the decode one, it append one more letter Y at the end of string
> > 
> > why?
> > is cx_freeze change the source python 2.7?




More information about the Python-list mailing list