需要帮助将字符串转换为pyg latin

凯蒂鲸

我想编写一个函数,该函数将使用字符串并将单词转换为Pyg Latin。这意味着:

  1. 如果单词以元音开头,请在末尾添加“ -way”。示例:“ ant”变成“ ant-way”。
  2. 如果单词以辅音簇开头,则将该簇移到末尾并在其上添加“ ay”。示例:“ pant”变为“ ant-pay”。我搜索了许多帖子和网站,但没有一个以相同的方式或我想要的方式进行。我必须在测试中测试这些功能,为此我有4个测试用例。一个是“鱼”,它应该返回“ ish-fray”,第二个是“ frish”,它应该返回“ ish-fray”,第三个是“ ish”,它应该返回“ ish-way”,最后一个是“ tis”但从头开始”,它应该返回“ is-tay ut-bay a-way atch-scray”

我找到了一个可以将其转换成必须的格式的程序,但是我不确定如何对其进行编辑,以便它可以返回所需的结果。

def pyg_latin(fir_str):
 pyg = 'ay'
 pyg_input = fir_str
 if len(pyg_input) > 0 and pyg_input.isalpha():
    lwr_input = pyg_input.lower()
    lst = lwr_input.split()
    latin = []
    for item in lst:
        frst = item[0]
        if frst in 'aeiou':
            item = item + pyg
        else:
            item = item[1:] + frst + pyg
        latin.append(item)
    return ' '.join(latin)

因此,这就是我的代码执行的结果:

pyg_latin('fish')
#it returns
'ishfay'

我希望它返回的内容没有太大不同,但是我不知道如何添加它

pyg_latin('fish')
#it returns
'ish-fay'
内森

考虑一下字符串应该是什么样子。

文本块,后跟连字符,后跟第一个字母(如果不是元音),后跟“ ay”。

您可以使用python字符串格式设置,也可以将字符串添加在一起:

Item[1:] + “-“ + frst + pyg 

还值得学习数组切片的工作原理以及字符串是可以通过符号访问的数组。以下代码似乎适用于您的测试用例。您应该重构它并了解每一行的功能。使解决方案更加健壮,但要添加测试场景,例如“ 1st”或带标点的句子。您还可以构建一个函数,该函数创建猪的拉丁字符串并返回它,然后重构代码以利用它。

def pg(w):

    w = w.lower()
    string = ''
    if w[0] not in 'aeiou':

        if w[1] not in 'aeiou':
            string = w[2:] + "-" + w[:2] + "ay"
            return string
        else:
            string = w[1:] + "-" + w[0] + "ay"
            return string
    else:
        string = w + "-" + "way"
        return string

words = ['fish', 'frish', 'ish', 'tis but a scratch']

for word in words:
    # Type check the incoming object and raise an error if it is not a list or string
    # This allows handling both 'fish' and 'tis but a scratch' but not 5.
    if isinstance(word, str):
        new_phrase = ''
        if ' ' in word:
            for w in word.split(' '):
                new_phrase += (pg(w)) + ' '

        else:
            new_phrase = pg(word)
        print(new_phrase)

    # Raise a Type exception if the object being processed is not a string
    else:
        raise TypeError

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在PIG Latin中将字符串转换为Long

来自分类Dev

将文字编码不正确的字符串(例如,“±”)转换为ISO-8859-1(Latin1)H

来自分类Dev

将单词转换为Pig Latin

来自分类Dev

使用Python 3将Pig Latin转换为英语

来自分类Dev

如何将Latin-1字符转换为ASCII(Python)

来自分类Dev

PHP:如何将特殊的组合字符从UTF-8转换为Latin 3

来自分类Dev

Django字符latin1 mysql

来自分类Dev

需要一些帮助将JSON字符串转换为NSDictionary

来自分类Dev

需要帮助来解决我的错误通知:将数组转换为字符串

来自分类Dev

我需要帮助,将Mysql查询对象转换为字符串

来自分类Dev

需要帮助将字符串中的三角形转换为数组

来自分类Dev

需要帮助将jQuery对象重新转换为字符串

来自分类Dev

需要帮助将二进制数转换为C中的字符串

来自分类Dev

在Perl中将Unicode数学粗体/斜体字符转换为latin-1

来自分类Dev

如何在JavaScript中将Unicode十六进制字符转换为Latin-1

来自分类Dev

如何在QString中禁止Unicode字符或转换为latin1

来自分类Dev

使用Java&Hibernate&JPA将MySQL latin1转换为UTF-8

来自分类Dev

如何将mysql latin1转换为utf8

来自分类Dev

将Pig Latin JavaScript函数转换为GUI时遇到问题

来自分类Dev

SQL将Latin1列转换为UTF8

来自分类Dev

SQLAlchemy返回UTF-8作为Latin1字符串

来自分类Dev

需要帮助将 AM - PM stat 结束时间字符串转换为 Datetime 24hr

来自分类Dev

我可以在不丢失数据的情况下将MySQL数据库字符集从latin1转换为utf8吗?

来自分类Dev

可以使用Pig Latin和Hive将PL / SQL可靠地转换为Pig Lating或Oozie管道

来自分类Dev

将latin1数据转换为现有数据库中的utf8

来自分类Dev

将MySQL表从Latin1转换为UTF8时如何防止/检查数据丢失

来自分类Dev

如果我知道只使用Latin-1字符,是否可以将UTF8编码的字符插入Latin-1表中?

来自分类Dev

在Python中将utf-8转换为latin-1

来自分类Dev

在JDBC中将Wacky latin1转换为UTF8

Related 相关文章

  1. 1

    在PIG Latin中将字符串转换为Long

  2. 2

    将文字编码不正确的字符串(例如,“±”)转换为ISO-8859-1(Latin1)H

  3. 3

    将单词转换为Pig Latin

  4. 4

    使用Python 3将Pig Latin转换为英语

  5. 5

    如何将Latin-1字符转换为ASCII(Python)

  6. 6

    PHP:如何将特殊的组合字符从UTF-8转换为Latin 3

  7. 7

    Django字符latin1 mysql

  8. 8

    需要一些帮助将JSON字符串转换为NSDictionary

  9. 9

    需要帮助来解决我的错误通知:将数组转换为字符串

  10. 10

    我需要帮助,将Mysql查询对象转换为字符串

  11. 11

    需要帮助将字符串中的三角形转换为数组

  12. 12

    需要帮助将jQuery对象重新转换为字符串

  13. 13

    需要帮助将二进制数转换为C中的字符串

  14. 14

    在Perl中将Unicode数学粗体/斜体字符转换为latin-1

  15. 15

    如何在JavaScript中将Unicode十六进制字符转换为Latin-1

  16. 16

    如何在QString中禁止Unicode字符或转换为latin1

  17. 17

    使用Java&Hibernate&JPA将MySQL latin1转换为UTF-8

  18. 18

    如何将mysql latin1转换为utf8

  19. 19

    将Pig Latin JavaScript函数转换为GUI时遇到问题

  20. 20

    SQL将Latin1列转换为UTF8

  21. 21

    SQLAlchemy返回UTF-8作为Latin1字符串

  22. 22

    需要帮助将 AM - PM stat 结束时间字符串转换为 Datetime 24hr

  23. 23

    我可以在不丢失数据的情况下将MySQL数据库字符集从latin1转换为utf8吗?

  24. 24

    可以使用Pig Latin和Hive将PL / SQL可靠地转换为Pig Lating或Oozie管道

  25. 25

    将latin1数据转换为现有数据库中的utf8

  26. 26

    将MySQL表从Latin1转换为UTF8时如何防止/检查数据丢失

  27. 27

    如果我知道只使用Latin-1字符,是否可以将UTF8编码的字符插入Latin-1表中?

  28. 28

    在Python中将utf-8转换为latin-1

  29. 29

    在JDBC中将Wacky latin1转换为UTF8

热门标签

归档