零基础学python 16 list与字符串的索引取出(课后习题答案)

  • A+

加入VIP,可以享受无广告视频播放!更可享受教程提前看!详情猛戳:VIP介绍

这节课我们来讲解一下上节课的习题答案。

先来回顾一下上次布置的题目:

主题:Rövarspråket

Rövarspråket是一个瑞士的孩子玩的单词游戏,跟英国人玩的Pig Latin很相似(那个游戏将普通单词通过一种特别的方式来编码)。这个游戏有两个基本的规则:

1. 元音(a, e, i, o, u仅仅这五个)留下不做处理。

2. 辅音(所有其他字母,包括y)会写两次并且还会有一个字母“o”在它们中间。

比如说,单词“book”会变成“bobookok”,单词“calendar”会变成“cocalolenondodaror”(在例子中没有展示大写字母,但大写字母也一样要遵循这个规则)。

请完成rovarspraket()函数,传入一个字符串作为参数(你可以假设这个字符串只包括字母,没有空格或者数字)。这个函数将返回一个通过Rövarspråket处理后的字符串,不包含其他字符(比如,没有额外的空格等)。

下面是你要完成的一些例子:

函数调用命令 返回值
rovarspraket("air") airor
rovarspraket("December") DoDecocemomboberor
rovarspraket("python") popyoytothohonon

解析:

这道题比较简单,主要的原理还是需要对于字符串进行遍历,所以我们需要使用for循环来遍历字符串。因为这节课讲解了使用索引的方式来取出字符,因此希望大家也可以使用索引的方式来获取到参数输入文本中的字母,然后对字母进行是否是元音的判断即可。(请注意大写的AEIOU也要判断为元音按元音的处理方式来处理)。详情可以具体再看看我们的视频教程。

下面是我们的参考答案:

def rovarspraket(string):
    # 请把你的代码写到这里
    result = ""
    for i in range(len(string)):
        if string[i] in ("a", "e", "i", "o", "u", "A", "E", "I", "O", "U"):
            result = result + string[i]
        else:
            result = result + string[i] + "o" + string[i]
    return result

# test the function
print('Testing rovarspraket() for message = "air": ' +
      rovarspraket("air"))
print('Testing rovarspraket() for message = "December": ' +
      rovarspraket("December"))
print('Testing rovarspraket() for message = "python": ' +
      rovarspraket("python"))

 

 

 

以下是我们的视频教程:

在线观看:

 

 

高清源文件下载:

内容已经隐藏,请注册为本站会员后查看

 

 

感谢大家的收看,我们下期再见!