python - 如何优化和改造我的文本转换器(工作速度很慢)
问题描述
这是代码示例
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 += "ᠦ"
...
我必须以某种方式让它更快,帮助我。并告诉我如何使用正常和快速的方式。
解决方案
您应该以这种方式创建字典:
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))])
推荐阅读
- git - Docker Compose using with git clone
- php - 由命名参数和函数调用中的参数解包生成的错误在 PHP-8 中不抛出 ErrorException
- javascript - 如何在javascript中发送和检索json中的十进制值?
- laravel - 安装包 composer 需要 yajra/laravel-oci8 但有一些错误
- php - FixedColumns DataTables 未对齐并在一列中重复每一行
- python - Python selenium 脚本打包
- python - Python BS4刮表,标签中有多个值
- sql - Oracle Sql Developer 导入的 Oracle dmp
- reactjs - Cookie 在 React 的 Web 视图中不起作用
- excel - OleAutoObj 没有在我的电脑中打开 Excel 应用程序