20190118-利用Python实现Pig Latin游戏
鲁夫,美女qq号大全,国家扶持的农业项目
1.利用python实现pig latin字母游戏
“pig latin”是一个英语儿童文字改写游戏,整个游戏遵从下述规则:
a. 元音字母是‘a’、‘e’、‘i’、‘o’、‘u’。字母‘y’在不是第一个字母的情况下,也被视作元音字母。其他字母均为辅音字母。例如,单词“yearly”有三个元音字母(分别为‘e’、‘a’和最后一个‘y’)和三个辅音字母(第一个‘y’、‘r’和‘l’)。
b. 如果英文单词以元音字母开始,则在单词末尾加入“hay”后得到“pig latin”对应单词。例如,“ask”变为“askhay”,“use”变为“usehay”。(同上)
c. 如果英文单词以‘q’字母开始,并且后面有个字母‘u’,将“qu”移动到单词末尾加入“ay”后得到“pig latin”对应单词。例如,“quiet”变为“ietquay”,“quay”变为“ayquay”。
d. 如果英文单词以辅音字母开始,所有连续的辅音字母一起移动到单词末尾加入“ay”后得到“pig latin”对应单词。例如,“tomato”变为“omatotay”, “school” 变为“oolschay”,“you” 变为“ouyay”,“my” 变为“ymay ”,“ssssh” 变为“sssshay”。
e. 如果英文单词中有大写字母,必须所有字母均转换为小写。
输入格式:
一系列单词,单词之间使用空格分隔。
输出格式:
按照以上规则转化每个单词,单词之间使用空格分隔。
输入样例:
welcome to the python world are you ready
输出样例:
elcomeway otay ethay ythonpay orldway arehay ouyay eadyray
step1:先写出每个转换规则的算法
def pig_latin(s):
s=s.lower()
#转换为小写
if s[0] in 'aeiou':
vowel_begin = true
else:
vowel_begin = false
if vowel_begin:
s = s+'hay'
#以元音字母开始,则在单词末尾加入“hay”
if s[0]=='q' and s[1] =='u':
s =s[2:]+'quay'
#以‘q’字母开始,并且后面有个字母‘u’,将“qu”移动到单词末尾加入“ay”
end = 0
for i in range(len(s)):
if s[i] in 'aeiou' or (i>0 and s[i]=='y'):
end = i
break
s=s[end:]+s[:end]+'ay'
#以辅音字母开始,所有连续的辅音字母一起移动到单词末尾加入“ay”
return s
step2:写一个主函数来实现输入格式和输出格式的转换
输入格式:
一系列单词,单词之间使用空格分隔。
输出格式:
按照以上规则转化每个单词,单词之间使用空格分隔。
def transfer_main(str):
s = str.split()
result = []
for i in s:
result.append(pig_latin(i))
new_s=' '.join(result)
return new_s
print(transfer_main('welcome to the python world are you ready'))
如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!!
点击进行留言回复
相关文章:
-
-
-
如何写python的配置文件
一、创建配置文件在d盘建立一个配置文件,名字为:test.ini内容如下:[baseconf]host=127.0.0.1port=3306user=rootp...
[阅读全文]
-
-
-
-
-
-
-
-
网友评论