首页 > 解决方案 > 如何优化和改造我的文本转换器(工作速度很慢)

问题描述

这是代码示例

for i in quoteAuthor:
if i == " ": quoteAuthorToMN += " "
if i == ",": quoteAuthorToMN += ","
if i == ".": quoteAuthorToMN += "."
if i == "К": quoteAuthorToMN += "ᠺ‍"
if i == "Э": quoteAuthorToMN += "ᠡ"
if i == "И": quoteAuthorToMN += "ᠢ"
if i == "Я": quoteAuthorToMN += "ᠢ"
if i == "Ь": quoteAuthorToMN += "ᠢ"
if i == "О": quoteAuthorToMN += "ᠣ"
if i == "У": quoteAuthorToMN += "ᠤ"
if i == "Ө": quoteAuthorToMN += "ᠥ"
if i == "Ү": quoteAuthorToMN += "ᠦ"

...

我必须以某种方式让它更快,帮助我。并告诉我如何使用正常和快速的方式。

标签: python

解决方案


您应该以这种方式创建字典:

letters = { "y": "ᠤ", "Ө": "ᠥ",  ... }

然后只需迭代:

new_quote = ""
for i in len(quoteAuthor):
    new_quote += letters[quoteAuthor[i]]

更有效的方法可能是:

new_quote = ''.join([letters[quoteAuthor[i]] for i in range(len(quoteAuthor))])

推荐阅读