如何打印variables之间没有空格之间的空格
我想知道如何删除额外的空间,当我打印的东西。
就像我这样做的时候:
print 'Value is "', value, '"'
输出将是:
Value is " 42 "
但我想要:
Value is "42"
有没有办法做到这一点?
不要使用print ...,
如果你不想要空间。 使用string连接或格式。
级联:
print 'Value is "' + str(value) + '"'
格式:
print 'Value is "{}"'.format(value)
后者更灵活,请参阅str.format()
方法文档和Formatting String Syntax部分 。
您还会遇到旧的%
格式样式 :
print 'Value is "%d"' % value print 'Value is "%d", but math.pi is %.2f' % (value, math.pi)
但是这不像新的str.format()
方法那么灵活。
对于将来我很容易使用它作为一个初学者,只是一个简单的答案:类似于使用end=''
来避免一个新的行,你可以使用sep=''
来避免空白…在这里这个问题,它看起来像这样: print('Value is "', value, '"', sep = '')
可以帮助未来的人。
这是逗号提供额外的空白。
一种方法是使用string%
方法:
print 'Value is "%d"' % (value)
这与printf
中的printf
类似,允许您在string本身中使用格式说明符来合并和格式化项目。 另一个例子,显示使用多个值:
print '%s is %3d.%d' % ('pi', 3, 14159)
对于什么是值得的,Python 3通过允许您为单个print
调用指定分隔符和终止符,极大地改善了情况:
>>> print(1,2,3,4,5) 1 2 3 4 5 >>> print(1,2,3,4,5,end='<<\n') 1 2 3 4 5<< >>> print(1,2,3,4,5,sep=':',end='<<\n') 1:2:3:4:5<<
去build立Martjin的话 我会使用string插值/格式。
在Python 2.x中,由于缺less围绕打印函数的括号,因此您似乎正在使用这种方法:
print 'Value is "%d"' % value
在Python 3.x中,你会使用格式化方法,所以你的代码看起来像这样。
message = 'Value is "{}"' print(message.format(value))
https://docs.python.org/2/library/functions.html#print
print(* objects,sep ='',end ='\ n',file = sys.stdout)
注意:由于名称打印被识别为打印语句,因此此function通常不可用作为内置function。 要禁用语句并使用print()函数,请在模块的顶部使用这个future语句:
从将来导入print_function
>>> value=42 >>> print "Value is %s"%('"'+str(value)+'"') Value is "42"