小蜂队 发表于 2021-10-30 20:47:36

速查Python课后第027讲:字符串(I) 按要求整理字符串

本帖最后由 小蜂队 于 2021-11-24 17:55 编辑

0.
#按照以下规则整理一个给定的字符串 s.
s = input("请输入一个字符串:")
   
res = []
for each in s:
    if res and res[-1].lower() == each.lower() and res[-1] != each:
      res.pop()
    else:
      res.append(each)
   
for each in res:
    print(each, end='')
执行结果:
1.编写代码结果比如 s = "a1b2c3" 转换后的结果是 "abbdcf"(a1 -> ab,b2 -> bd,c3 -> cf);s = "x7y8z9" 转换后的结果是 "xeygzi"

#给定的字符串 s 是按照以下规则存放的:它的偶数下标为小写的英文字母,奇数下标为正数
#编写代码,将奇数下标的数字转换为相对于上一个字母偏后的字母。
s = input("请按规则输入一个字符串:")
   
length = len(s)#获取 s 的长度
res = []
# 获取字母 a 的编码值
base = ord('a')
   
# 从第一个元素开始,每次迭代跳过一个元素
for i in range(0, length, 2):
    # ord(s) - base 操作得到一个字母的偏移值,比如 b 就是 1
    # 跟 26 求余数的作用是防止溢出,循环计算偏移
    shift = chr((ord(s) - base + int(s)) % 26 + base)
    print(s+shift, end="")

念瞳啊 发表于 2022-4-5 21:05:17

本帖最后由 念瞳啊 于 2022-4-5 21:10 编辑

{:5_109:}
页: [1]
查看完整版本: 速查Python课后第027讲:字符串(I) 按要求整理字符串