python如何生成字典值为字符串的长度

python如何生成字典值为字符串的长度

作者:William Gu发布时间:2026-01-14阅读时长:0 分钟阅读次数:6

用户关注问题

Q
如何在Python中计算字典中每个字符串值的长度?

我有一个字典,里面的值都是字符串,如何快速得到每个字符串对应的长度?

A

使用字典推导式计算字符串长度

可以通过字典推导式遍历字典的键值对,利用内置len()函数计算每个字符串值的长度。例如,给定字典dict_example,可以写成:{key: len(value) for key, value in dict_example.items()},这样就生成了一个新字典,键不变,值变成对应字符串的长度。

Q
有没有方法一次性将字典中字符串值替换为它们的长度?

想直接修改原始字典,把所有字符串类型的值替换成它们的长度,怎么做才好?

A

遍历字典并更新字符串值为长度

遍历字典的键,对应的值调用len()函数更新,可以用for循环结合判断类型完成。示例代码:for key in dict_example: if isinstance(dict_example[key], str): dict_example[key] = len(dict_example[key])。这种方法无需创建新字典,直接修改原字典中的值。

Q
怎样处理字典中值可能不是字符串但也想获取字符串长度?

字典中有些值不是字符串类型,如果直接用len()会报错,要怎么安全获取字符串的长度?

A

判断类型再计算长度以防报错

在计算长度前先用isinstance()判断值是否为字符串类型,只对符合条件的值调用len(),否则可以跳过或设置默认长度值。例如:{k: len(v) if isinstance(v, str) else 0 for k, v in dict_example.items()},这样既避免错误,也能保证程序稳定运行。