• Python学习---字符串处理


    This world is but a canvas to our imagination.

    世界只是我们的想象的画布。 ----Apri 22

    '''
    题目内容:
    “Pig Latin”是一个英语儿童文字改写游戏,整个游戏遵从下述规则:

    (1). 元音字母是‘a’、‘e’、‘i’、‘o’、‘u’。字母‘y’在不是第一个字母的情况下,也被视作元音字母。其他字母均为辅音字母。例如,单词“yearly”有三个元音字母(分别为‘e’、‘a’和最后一个‘y’)和三个辅音字母(第一个‘y’、‘r’和‘l’)。

    (2). 如果英文单词以元音字母开始,则在单词末尾加入“hay”后得到“Pig Latin”对应单词。例如,“ask”变为“askhay”,“use”变为“usehay”。

    (3). 如果英文单词以‘q’字母开始,并且后面有个字母‘u’,将“qu”移动到单词末尾加入“ay”后得到“Pig Latin”对应单词。例如,“quiet”变为“ietquay”,“quay”变为“ayquay”。

    (4). 如果英文单词以辅音字母开始,所有连续的辅音字母一起移动到单词末尾加入“ay”后得到“Pig Latin”对应单词。例如,“tomato”变为“omatotay”, “school” 变为“oolschay”,“you” 变为“ouyay”,“my” 变为“ymay ”,“ssssh” 变为“sssshay”。

    (5). 如果英文单词中有大写字母,必须所有字母均转换为小写。

    输入格式:
    一系列单词,单词之间使用空格分隔。

    输出格式:
    按照以上规则转化每个单词,单词之间使用空格分隔。

    输入样例:
    Welcome to the Python world Are you ready

    输出样例:
    elcomeway otay ethay ythonpay orldway arehay ouyay eadyray
    '''

    def is_vowel(c):
        ###判断是元音字符
        return c in ['a','e','i','o','u']
    
    #print(is_vowel('y'))
    ###输入
    string = input()
    ###初步处理
    string = string.lower()
    string = string.strip()
    words = string.split()
    ###临时存储列表
    change_string = []
    for word in words:
        first = word[0]
        if is_vowel(first):
            ###首字母是元音
            word = word[:] + "hay"
        else:
            ###首字母不是元音
            if word[:2] =="qu":
                ###前两字是“qu”
                word = word[2:] + "quay"
            else:
                for i in range(1,len(word)):
                    ###对每个WORD,遍历字符
                    if is_vowel(word[i]) or (word[i] =='y'):
                         break
                    else:
                        first = first + word[i]
                word = word[len(first):] + first + "ay"
        ###将改写的WORD 存入临时列表
            change_string.append(word)
    for word in change_string:
        print(word,end=" ")
    print()
    
  • 相关阅读:
    数据库 MySQL part4
    数据库 MySQL part3
    win64 Python下安装PIL出错解决2.7版本 (3.6版本可以使用)
    Python3.6 安装、后续终端pip 安装模块命令
    Python for循环文件
    Python遍历字典dict的几种方法
    Python 模块xml
    Socket 是嘛玩意儿(简单聊聊)
    Python高阶函数(Map、Reduce、Filter)和lambda函数一起使用 ,三剑客
    异步加载数据
  • 原文地址:https://www.cnblogs.com/whatiwhere/p/8906259.html
Copyright © 2020-2023  润新知