python如何知道在字符串文字和变量之间添加空格?
所以,我目前在学习python的方式很难。在其中一个练习中,我们用它们之间的变量输出字符串文字。我注意到,与其他语言不同,python会自动在字符串文字和变量之间添加空格。我只是好奇它是如何做到的。下面是我的意思的一个例子。python如何知道在字符串文字和变量之间添加空格?
example.py:
total_SO_questions_asked = 1
print "I have asked", total_SO_questions_asked, "question to SO thus far."
终端:
$ python example.py
I have asked 1 question to SO thus far.
这是愚蠢的,不是很重要的,但我很好奇,我希望能SO赐教!
它的Python只是一个很酷的功能。
有两个事情有多个参数:它在参数周围添加一个空间作为必要参数,它将每个参数分别转换为一个字符串。
让我们看看如何简单,我们可以利用这些特点使得潜在的复杂代码:
a = 5
b = 3
c = a + b
print a, "plus", b, "equals", a+b
如果我们不能拥有单独铸造参数列表,它会很难看:
print str(a) + " plus " + str(b) + " equals " + str(a+b)
来自Python的禅,第1行和第3行:
美丽胜于丑陋。
简单胜过复杂。
查看Python reference了解更多信息。
谢谢!这是一个非常明确的答案,尤其是将它与Python的Zen结合起来,不仅回答了python如何做到这一点,而且还回答了为什么。 OP很高兴! –
很高兴能帮到你! –
您可以轻松打印照片,无需空格:
>>> aa = 'abcd'
>>> bb = 'efgh'
>>> n = 1
>>> print "%s%d%s" % (aa, n, bb)
abcd1efgh
>>>
最好使用[''''str.format()'''](https://docs.python.org/2/library/stdtypes.html#str.format)('''print“{ } {} {}“。格式(aa,n,bb)''')。无论如何,你没有回答OP的问题。 – pzp
没有聪明在这里内部发生了。无论它们是什么,print
总是将它的论点与空间分开。
(回答iCodez的评论无情被盗)
这里没有什么聪明的东西在内部发生。不管它们是什么,“印刷”总是将它的论点与空间分开。 – iCodez
https://docs.python.org/2/reference/simple_stmts.html?highlight=print#grammar-token-print_stmt – TigerhawkT3
@iCodez - 你不应该在评论中回答问题,它会让他们陷入冷门...... – DrCord