如何删除字符串末尾的逗号
How to remove comma at the end of a string
嘿,我是编程新手,在 python 中使用名为 pokebase 的库,它是 Pokeapi
的包装器
代码:
import pokebase as pb #pip install pokebase
p1 = pb.pokemon('venusaur')
types = ''
for poketype in p1.types:
types += poketype.type.name.capitalize()+', '
print(types)
它打印的数据是这样的:
Grass, Poison,
所以我学会了如何在 youtube 教程上使用这个 api 但这里的问题是当我 运行 for 循环时它在输出的末尾打印 ', '语法错误。我该如何解决?
我尝试使用 end 和 separator 参数删除它,但它不起作用。我怎样才能去掉最后的逗号?
你可以这样做:
types = ','.join(poketype.type.name.capitalize() for poketype in p1.types)
.join()
函数接受一个可迭代对象并连接它的元素。
您可能应该在这里使用 join()
,因为那样会非常简单。如果你真的想坚持你的循环方法,那么你需要重新表述逻辑,这样最后的逗号就不会被附加。在那种情况下,我会选择:
types = ''
for poketype in p1.types:
if types != '':
types += ', '
types += poketype.type.name.capitalize()
print(types)
以上逻辑表示从第二个术语开始,在每个术语前面加上一个逗号。这避免了每次在最后一个词后放置一个悬空的逗号。
如果你想坚持使用循环选项,还有其他选项。您可以将最后一个打印语句更改为
print(types[:-2])
它将删除最后 2 个字符。
嘿,我是编程新手,在 python 中使用名为 pokebase 的库,它是 Pokeapi
的包装器代码:
import pokebase as pb #pip install pokebase
p1 = pb.pokemon('venusaur')
types = ''
for poketype in p1.types:
types += poketype.type.name.capitalize()+', '
print(types)
它打印的数据是这样的:
Grass, Poison,
所以我学会了如何在 youtube 教程上使用这个 api 但这里的问题是当我 运行 for 循环时它在输出的末尾打印 ', '语法错误。我该如何解决? 我尝试使用 end 和 separator 参数删除它,但它不起作用。我怎样才能去掉最后的逗号?
你可以这样做:
types = ','.join(poketype.type.name.capitalize() for poketype in p1.types)
.join()
函数接受一个可迭代对象并连接它的元素。
您可能应该在这里使用 join()
,因为那样会非常简单。如果你真的想坚持你的循环方法,那么你需要重新表述逻辑,这样最后的逗号就不会被附加。在那种情况下,我会选择:
types = ''
for poketype in p1.types:
if types != '':
types += ', '
types += poketype.type.name.capitalize()
print(types)
以上逻辑表示从第二个术语开始,在每个术语前面加上一个逗号。这避免了每次在最后一个词后放置一个悬空的逗号。
如果你想坚持使用循环选项,还有其他选项。您可以将最后一个打印语句更改为
print(types[:-2])
它将删除最后 2 个字符。