字典中字符串类型值求和求助:如何将字符串转为整数
解决字典中字符串列表的求和问题
你的问题核心是字符串无法直接参与数值求和,需要先把列表里的每个字符串转换成整数,再计算总和。这里给你修正后的代码:
dic1 = {'2012-03-06':['1','4','5'],'2012-03-12':['7','3','10']} # 遍历字典的键值对,同时获取日期和对应的字符串列表 for date, str_numbers in dic1.items(): # 把每个字符串转成整数,再求和 total = sum(int(num) for num in str_numbers) # 按指定格式输出 print(f"{date}, {total}")
运行这段代码就能得到你想要的输出:
2012-03-06, 10 2012-03-12, 20
关键步骤说明
- 用
dic1.items()替代单独遍历键,能直接拿到日期和对应的数值列表,代码更简洁易读。 - 生成器表达式
int(num) for num in str_numbers会逐个把字符串转成整数,sum()函数可以直接接收这个生成器计算总和,不需要额外创建完整的整数列表(比列表推导式更省内存)。 - f-string是Python 3.6+的特性,用来格式化输出非常方便,能精准匹配你要的格式。
内容的提问来源于stack exchange,提问作者watermelon_soda
相关产品推荐
相关产品推荐

