单身情歌&&信息加密

单身情歌

在这里插入图片描述
其实这道题他很简单,但是我有个地方是错了的
lower()这个方法,仅仅是临时将字符串改变,并没有传回变量a,所以当我写 a.lower() if “love” in a 最后得出来的结果是错误的。

信息加密

在这里插入图片描述
这道题,我遇到一个问题就是,不知道如何在已知字母和要加的数字的情况下找到结果值。
解决: 字母转换为ASCII码:ord(a),加减后,ASCII码转换为字母:chr(ord(a)+b)
这里还遇到了一个问题就是,如何将a+b>'z’的时候ASCII码转换,这是个数学问题,我是数学白痴,想了一会儿才搞出来:(现在的ascii码+要增加的码-96)%26+96
写到这里我发现,可以不用判断ord(i)+b是否大于122

最开始的代码:
在这里插入图片描述
改进(删除判断语句)
在这里插入图片描述
因为py2 不支持end=’ ’ 所以换了一种写法
在这里插入图片描述
但是遇到了一个问题,就是我本来是直接for i in l:然后改变了i的值 问题就遇到了 i的值被改变了并不能传回l,所以打印出来的结果还是原来的字符串,所以我就改用了如上图。

其实这里涉及到了,修改字符串的几种方法。总结一下:

①将字符串转化为列表,再改变列表,最后用‘ ’.join()函数将列表内的元素衔接成字符串
②可以用字符串序列切片
例如:a=a[:3]
print(a)
需要被注意的是不能直接修改a[:3]
可以这样修改:a=a[:3]+“adn”
③使用字符串的replace函数 eg. s.replace(‘a’,‘b’) 用b替换a
④重新给字符串赋值。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值