python - 这个字典是如何构造的?
问题描述
我无法理解这本字典是如何构造的:
chars="0123456789+ "
self.char_indices = dict((c, i) for i, c in enumerate(self.chars))
我在keras的示例中找到了此代码。
有人可以解释发生了什么吗?
编辑:具体来说,我不明白将哪种数据结构传递给 dict()。变量 i 是如何生成的?我在问代码的详细解释
解决方案
以下代码是等效的:
self.char_indices = {}
for index, char in enumerate(self.chars):
self.char_indices[char] = index
使用 self.char_indices dict,您可以在 O(1) 时间复杂度中找到特定字符在 self.chars 中(可以出现在输入中的字符)
推荐阅读
- python - Parse a text file with Python
- python - How to run centerline command-line tool in windows 10 command promt
- javascript - Getting error string from Lambda invoked via AWS API
- arrays - 列出所有 Postgres 枚举数组值以及应用在记录上的值,如果应用或不应用则显示状态
- python - Python Post 需要帮助创建帖子有效负载
- javascript - Jekyll:为什么我需要配置 Jekyll 来保留这两个 min.js.map 文件?
- java - How i can get data from two tables in on query?
- qt - 如何在 QML 中使用助记符字符串设置 MenuBarItem 的样式
- c# - 实例化对象 EliteDangerousAPI 时计算机特定的 NullReferenceException
- matlab - 从txt文件中取出符号变量并在Matlab中制作矩阵