我的编程空间,编程开发者的网络收藏夹
学习永远不晚

20190118-利用Python实现P

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

20190118-利用Python实现P

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'))

 

 

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

20190118-利用Python实现P

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

20190118-利用Python实现P

1.利用Python实现Pig Latin字母游戏“Pig Latin”是一个英语儿童文字改写游戏,整个游戏遵从下述规则:a. 元音字母是‘a’、‘e’、‘i’、‘o’、‘u’。字母‘y’在不是第一个字母的情况下,也被视作元音字母。其他字母
2023-01-30

Windows 中通过Python实现p

由于ping命令在ping的时候无法加入时间,不能够直观分析结果。便想在ping的时候加入时间戳。1.首先需要系统配置了Python的环境,我的环境如下,这里就不介绍环境搭建步骤。2.以下是代码展示,新建一个ping.py文件import
2023-01-31

利用virtualenv实现Python

由于开发需求,需要Python2和Python3共存,利用当下最流行的虚拟环境工具virtualenv实现。#安装virtualenvpip install virtualenv#使用virtualenv创建虚拟环境virtualenv p
2023-01-31

如何利用pip将python模块安装到p

本人在linux下同时安装了Python2.7和Python3.4,一、 利用pip将一些模块安装到指定的版本安装到python2.7版本中:sudo pip2 install 模块名安装到python3.4版本中:sudo pip3 in
2023-01-31

Python 利用socket 实现 s

1.场景描述:主机A主机B主机C10.13.170.76172.28.117.156(squid)10.95.113.131    主机A---->主机B(80)--->主机C(22), A通过B的80访问主机C131 2.Python代码
2023-01-31

利用python实现IP扫描

需求:写一个脚本,判断192.168.11.0/24网络里,当前在线ip有哪些?知识点:1 使用subprocess模块,来调用系统命令,执行ping 192.168.11.xxx 命令2 调用系统命令执行ping命令的时候,会有返回值(p
2023-01-31

Python实现图片裁剪的两种方式——P

在这篇文章里我们聊一下Python实现图片裁剪的两种方式,一种利用了Pillow,还有一种利用了OpenCV。两种方式都需要简单的几行代码,这可能也就是现在Python那么流行的原因吧。首先,我们有一张原始图片,如下图所示:原始图片然后,我
2023-01-31

利用python实现数据分析

1:文件内容格式为json的数据如何解析import json,os,sys current_dir=os.path.abspath(".")filename=[file for file in os.listdir(current_dir
2022-06-04

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录