Python中sep参数失效问题:为何print未按指定分隔符输出内容?
问题原因及解决方法
sep参数为什么不起作用?
print的sep参数是用来分隔传入print的多个独立参数的,比如写print("a", "b", "c", sep="----"),才会输出a----b----c。但你现在只给print传了一个参数answer——这个变量保存的是一整串输入的字符串,是一个整体,不存在多个参数需要分隔的情况,所以sep参数完全没机会发挥作用。
实现预期输出的两种方法
要得到i ----am ----not ----alone ----的效果,得先把输入的字符串拆成单个单词,再做处理:
方法一:利用print多参数+sep
先把字符串按空格拆分,用*把列表拆成多个参数传给print,再加一个空参数来补上末尾的分隔符:
answer = input("What is your weakness? ") words = answer.split() print(*words, "", sep=" ----")
方法二:字符串拼接法
用join方法把拆分后的单词用----连接,再手动加上末尾的分隔符:
answer = input("What is your weakness? ") words = answer.split() output = " ----".join(words) + " ----" print(output)
内容的提问来源于stack exchange,提问作者JUSTIN KPAKPA
相关产品推荐
相关产品推荐

