在python中,如果我说
print 'h'
得到字母h和换行符。如果我说
print 'h',
我得到了字母h,没有换行符。如果我说
print 'h',
print 'm',
我得到字母h,一个空格,和字母m。我如何阻止Python打印空格?
print语句是同一个循环的不同迭代,所以我不能只使用+运算符。
在python中,如果我说
print 'h'
得到字母h和换行符。如果我说
print 'h',
我得到了字母h,没有换行符。如果我说
print 'h',
print 'm',
我得到字母h,一个空格,和字母m。我如何阻止Python打印空格?
print语句是同一个循环的不同迭代,所以我不能只使用+运算符。
当前回答
import sys
a=raw_input()
for i in range(0,len(a)):
sys.stdout.write(a[i])
其他回答
print("{0}{1}{2}".format(a, b, c))
或者使用+,即:
>>> print 'me'+'no'+'likee'+'spacees'+'pls'
menolikeespaceespls
只要确保所有对象都是可连接的对象。
重新控制你的控制台!简单:
from __past__ import printf
其中__past__.py包含:
import sys
def printf(fmt, *varargs):
sys.stdout.write(fmt % varargs)
然后:
>>> printf("Hello, world!\n")
Hello, world!
>>> printf("%d %d %d\n", 0, 1, 42)
0 1 42
>>> printf('a'); printf('b'); printf('c'); printf('\n')
abc
>>>
额外奖励:如果你不喜欢打印>> f,…,您可以将此跳跃扩展到fprintf(f,…)。
Python 2.5.2 (r252:60911, Sep 27 2008, 07:03:14)
[GCC 4.3.1] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> print "hello",; print "there"
hello there
>>> print "hello",; sys.stdout.softspace=False; print "there"
hellothere
但实际上,应该直接使用sys.stdout.write。
print('''first line \
second line''')
它会产生
第一行,第二行