如何在Python中使用zip打印字符串列表时去除单引号?
解决Python中zip组合列表后打印去除字符串单引号的问题
直接用str(list(zip(b, reps)))会触发元素的repr()方法,字符串的默认repr会带单引号,所以光替换逗号没用。你可以自己手动格式化每个组合后的元素,再拼接成目标格式:
方法一:列表推导式+字符串拼接
reps = ['x 5', 'x 5', 'x 3', 'x 5', 'x 5', 'x 5+'] b = [90, 122, 135, 146, 168, 191] # 逐个格式化每个(数字, 字符串)对 formatted_pairs = [f"({num} {rep})" for num, rep in zip(b, reps)] # 拼接成最终格式 output = f"[{''.join(formatted_pairs)}]" print(output)
更简洁的写法
一行代码搞定:
print(f"[{''.join(f'({num} {rep})' for num, rep in zip(b, reps))}]")
运行后输出就是你要的:[(90 x 5) (122 x 5) (135 x 3) (146 x 5) (168 x 5) (191 x 5+)]
内容的提问来源于stack exchange,提问作者Lowsaint 98
相关产品推荐
相关产品推荐

