这个第二关,我纠结了很久,中途各种不会,看帮助手册,百度~关于字符串的操作,列表的操作这些问题。因为我一开始想的是从字符串中找到某个字符例如a,再换成c(提示的转换规律),一开始用str.find(),找是找到了,返回的是一个位置,没办法换。在手册里发现了replace,高兴了一下,去试,发现,换了一次,abc变成cbc,下次轮到c换成e,就变成了ebe,这样的问题。因为replace一次替换所有,已经换完的,可能经过第二换,三换~~~

  

  好难,我当时是这么想。。。陷入困境,我又翻手册,找string的操作,找replace能不能指定某个区域。翻到一个chr()的时候,我看到了解释中返回值是根据ASCII值对应的字符。我想到了,以前看过一点C语言里,怎么转换大小写,顿时想到用ASCII值来做。然后又顺利的找到手册中描述怎么找字母对应ASCII的ord(),感觉有救了!!

 

   用for来取字符,一个一个的换,这样应该就可以。

   自己先写个简单字符串'abc',然后开始取第一个,ord得到ASCII值,+ 2之后给chr,得到了变好的字母,此时却发现,出错了~~!!好像意思是str【i】不能单独定义赋值。。。这是我的理解,不知道对不对。我心里此时在想,为什么不让我换!!!

    又只能想别的办法了,看手册,看例题,找思路,我比较习惯这种思维,从看到的情况,结合我现在的问题,看是否有解决办法。看到有个append,是添加值的,试了下,可是总是报错。但是这个函数给了我一个想法,就是把变换之后的值,每次扔到新的列表里,最后连起来,成为一个完整的。在毫无办法之后,用了度娘,结果发现是我用append多打了一个s,appends~~也找到了join,用来连接列表里的数据。^_^七搞八搞的,总算走上了通向正确结果的目标~

   历经磨难,终成正果,以后再看别人的解法~