Python中如何将int转为字符串并完成多字段字符串拼接
问题排查与解决方案
错误点梳理
- 类型转换部分语法错误:你写的
x str(['product_id'])属于非法语法,正确的逻辑是先取出字典x中product_id对应的值,再传入str()函数完成类型转换,写法为str(x['product_id']),原写法多写了无关的x前缀,且字典取值的位置错误放在了str()的括号外。 - 括号匹配错误:原代码中lambda的拼接表达式没有正确划定范围,且结尾多了冗余的右括号,导致Python解析语法失败。
修正后可运行代码
new_prod_list2 = list(map(lambda x: str(x['product_id']) + x['product_category'] + x['product_name'], products)) print(new_prod_list2)
更易读的替代写法
如果追求代码可读性,更推荐使用列表推导式替代map+lambda的组合,逻辑更直观,还可以搭配f-string避免拼接语法错误:
new_prod_list2 = [f"{p['product_id']}{p['product_category']}{p['product_name']}" for p in products] print(new_prod_list2)
内容的提问来源于stack exchange,提问作者Adam
相关产品推荐
相关产品推荐

