首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在使用end=“-”在for循环中打印时,如何排除最后一个字符?

在使用end=“-”在for循环中打印时,如何排除最后一个字符?
EN

Stack Overflow用户
提问于 2019-04-07 15:06:43
回答 3查看 474关注 0票数 1

我想打印“1-2-3”,但是当我运行时,我得到了“1-2-3 -”,例如,使用range (4)的for循环。我目前正在使用"end=' - '“。我该怎么做才能排除这最后一个"-"?

代码语言:javascript
复制
for i in range(4):
    print(i, end=' - ')

1-2-3-

EN

回答 3

Stack Overflow用户

发布于 2019-04-07 15:33:13

不要使用end,使用sep

函数print可以接受要打印的多个参数。然后,您可以依赖sep参数来定义分隔符。

代码语言:javascript
复制
print(*range(4), sep =' - ') # 1 - 2 - 3
票数 5
EN

Stack Overflow用户

发布于 2019-04-07 15:30:43

您可以使用str_separator.join(iterable)函数。为了正确地工作,迭代集合中的每个元素都必须是一个字符串。

对于你的问题,答案是:

代码语言:javascript
复制
print_list = [ str(i) for i in range(1, 4) ]
print(" - ".join(print_list))

它会按你的意愿打印1-2-3。

票数 2
EN

Stack Overflow用户

发布于 2019-04-07 15:11:59

如果您不确定要打印的值的数量和类型,可以将它们保存到某个列表中,并使用参数sep (等于您所选择的间距)打印它们。

代码语言:javascript
复制
to_print = []

for i in range(4):
    to_print.append(i)

print(*to_print, sep=' - ') # --> '0 - 1 - 2 - 3'
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55560420

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档