a = input("give a word: ")
b = input("give another word: ")
c = a + " " + b
print("result is", c)
并获得如下输出:
give a word: name
give another word: word
result is name
word
我的问题是为什么在pydev或eclipse控制台上输出两行?我希望输出如下:
give a word: name
give another word: word
result is name word
我怎么以及为什么会这样?在cmd它看起来很好?? !!
我也发现python使用“\ r”保存字符串,我认为这是在pydev控制台上出现此问题的那个,是吗?
答案 0 :(得分:1)
在我看来,Eclipse + PyDev也在字符串中存储换行符。根据操作系统的不同,换行符有一些变体:\ n,\ r,\ r \ n。
无论如何,我认为以下内容应该可以解决您的问题:
a = raw_input("give a word: ").strip()
b = raw_input("give another word: ").strip()
c = a + " " + b
我已经在Windows7上的PyDev for Eclipse Galileo上测试了这个代码,它可以运行。
希望这有帮助
答案 1 :(得分:0)
这很奇怪。
你是否得到一个额外的换行符? (您可以通过发出另一个打印命令来检查)。
Eclipse在控制台输入上总是很奇怪。如果不知何故它在字符串中保留CR或LF(或两者),我不会感到惊讶,所以当你打印它们时,你会得到一个换行符。但是接下来你应该得到另一个换行符。