如何在Python中创建一个句子?

时间:2013-07-31 11:31:46

标签: python join python-3.x ascii

我在Win7上使用Python 3.2。我用ASCII代码写了这个:

print (''.join((chr(i+22) for i in (50,75,90,90,99))))
print (''.join((chr(j+22) for j in (44,83,92,94,82,78,75,99,11))))

结果写道:

Happy 
Birthday!

现在,我想用一句话加入这两个词,所以写道:

Happy Birthday!

这似乎是一件简单的事情,但我是Python的新手,有人可以帮助我吗? 谢谢:))

5 个答案:

答案 0 :(得分:2)

你的意思是这样吗?

print (''.join((chr(i+22) for i in (50,75,90,90,99,10,44,83,92,94,82,78,75,99,11))))

答案 1 :(得分:1)

要将它们放在同一行,并在第一个print语句的末尾输入参数end =“”,那么下一个print语句将在同一行上打印。

答案 2 :(得分:0)

简单..只需使用+运算符。

print (''.join((chr(i+22) for i in (50,75,90,90,99))))+" "+ (''.join((chr(j+22) for j in (44,83,92,94,82,78,75,99,11))))

答案 3 :(得分:0)

您可以要求print()不要添加换行符:

print(..., end='')
默认情况下,

end设置为\n

对于您的样本,那就是:

print(''.join((chr(i+22) for i in (50,75,90,90,99))), end=' ')
print(''.join((chr(j+22) for j in (44,83,92,94,82,78,75,99,11))))

Happy之后打印空格而不是换行符。

您还可以在ASCII码点列表中包含该空格; ASCII空间为32,但您将22添加到您的值中,因此包括10应该执行此操作:

print(''.join((chr(i+22) for i in (50,75,90,90,99,10,44,83,92,94,82,78,75,99,11))))

答案 4 :(得分:0)

使用字符串格式打印输出:

s1 = ''.join((chr(i+22) for i in (50,75,90,90,99)))
s2 = ''.join((chr(j+22) for j in (44,83,92,94,82,78,75,99,11))))

print("%s %s" % (s1, s2))