在同一行上获取两个文本字符串?

时间:2013-07-31 20:57:52

标签: python string text

抱歉可怕的头衔!我不知道要写什么,而不会让瓷砖长500字。

假设我有

print 'Hi!'
print 'How are you?'

有什么方法可以把它放到同一行吗? “嗨!你好吗?”

以下是我目前使用的代码:

choice = raw_input('>: ')
if choice=='1':
    menu1()
else:
    print '' +choice
    print 'is not a recognized commando.'

我的其他代码是:

from colorama import Fore, Back, Style
print
print 'Now chatting with Tom'
time.sleep(2)
print
print
print(Fore.RED + 'Tom >: ') + print(Fore.GREEN + 'test')

当然这没用。我只是想测试一下。

有什么办法可以将这两个字符串放到同一行吗?

非常感谢!

修改

非常感谢大家!我知道Python最基本的部分,但我不知道如何忽略

反正。出于某种原因,我得到额外的空间。我想写[12:41:39](时间)。在我的代码中,它看起来像这样:

print(Fore.YELLOW + '['),
print strftime("%H:%M:%S"),
print ']          ',

输出是[12:41:39]

我不知道这里有什么问题。我真的希望有人能为我解释一下!谢谢!

7 个答案:

答案 0 :(得分:5)

在Python 2.x中,print is a statement,添加一个尾随逗号:

print 'Hi!',  # No newline will be printed

在Python 3.x中,print() is an ordinary function而不是语句,为end关键字参数传递一个空字符串:

print('Hi!', end='')

如果您在Python 2.x代码中使用from __future__ import print_function以获得向前兼容性,那么您将需要使用函数版本而不是语句版本。

答案 1 :(得分:4)

使用尾随逗号,这将取消print之后添加的换行符。查看print statement

print 'Hi!',
print 'How are you?'

答案 2 :(得分:2)

在语句末尾添加逗号:

print 'Hi!',
print 'How are you?'

输出:

Hi! How are you?

这来自documentation

  

除非'\n'语句以逗号结尾,否则最后会写一个print字符

答案 3 :(得分:2)

在python 2.x中,您可以在print语句

之后使用逗号
print 'Hi!',
print 'How are you?'

将输出:

Hi! How are you?     

您也可以从python 3.x导入print函数并执行

from __future__ import print_function
print("Hi!", end='')

这会将空字符串作为\n的结束字符而不是

答案 4 :(得分:2)

使用逗号:

print 'Hi!', 'How are you?'

答案 5 :(得分:1)

在Python3中:

print('text', end='')
print('text', end='')

我猜你正在找什么! :texttext

您还可以设置分隔符:

print('text', 'text', 'text', sep = '')

提供:texttexttext代替text text text

答案 6 :(得分:1)

您也可以将所有字符串放在一个字符串中:

>>> string = 'abc' + 'def'
>>> print string
'abcdef'