You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何创建以用户输入的单个符号为键、对应ASCII码为值的字典?

问题分析与解决方案

你的代码存在两个核心问题:

  1. 参数类型错误:ord(inp)中的inp是分割后的字符串列表,而ord()仅接受单个字符作为参数,运行时会抛出TypeError。
  2. 字典值重复:dict.fromkeys()会将所有键映射到同一个固定值,无法为每个字符生成对应的ord结果。

修正后的代码

推荐使用字典推导式,这是Python中创建这类映射最简洁高效的方式:

inp = input().split()  # 不带参数的split()自动处理任意空白,避免空字符串
char_dict = {char: ord(char) for char in inp}
print(char_dict)

其他可行写法

如果需要兼容Python 2.x,也可以用生成器表达式配合dict():

inp = input().split()
char_dict = dict((char, ord(char)) for char in inp)
print(char_dict)

示例运行

输入:a b c
输出:{'a': 97, 'b': 98, 'c': 99}

内容的提问来源于stack exchange,提问作者closedcntr

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.14 19:25:20