如何移除Python字符串末尾的逗号?以pokebase调用Pokeapi场景为例
解决方法
方法1(最推荐):使用str.join()拼接
这是Python处理多字符串带分隔符拼接的标准方案,从根源上避免出现末尾多余分隔符的问题:
import pokebase as pb #pip install pokebase p1 = pb.pokemon('venusaur') # 先把所有类型名整理为列表 type_list = [poketype.type.name.capitalize() for poketype in p1.types] # 用', '拼接列表,自动不会在末尾加分隔符 types = ', '.join(type_list) print(types)
运行输出为Grass, Poison,完全符合格式要求。
方法2:裁剪已有字符串的末尾字符
如果不想改动原有循环拼接的逻辑,可以直接对生成的字符串做末尾处理:
import pokebase as pb #pip install pokebase p1 = pb.pokemon('venusaur') types = '' for poketype in p1.types: types += poketype.type.name.capitalize()+', ' # 移除末尾的逗号和空格 types = types.rstrip(', ') print(types)
也可以用切片types = types[:-2]实现同样效果,但切片在types为空字符串的极端场景下会触发索引错误,rstrip兼容性更强。
方法3:直接利用print的sep参数输出
不需要提前拼接字符串,直接通过print的内置参数控制格式:
import pokebase as pb #pip install pokebase p1 = pb.pokemon('venusaur') type_list = [poketype.type.name.capitalize() for poketype in p1.types] print(*type_list, sep=', ')
内容的提问来源于stack exchange,提问作者Clot
相关产品推荐
相关产品推荐

