如何用Python打印行

2024-05-16 17:58:10 发布

您现在位置:Python中文网/ 问答频道 /正文

我在Python中遇到过这样的行:

print "Let's talk about %s." % my_name

但是,我在Ruby中看到过这样的情况:这两个输出是相等的:

print "Let's talk about #{my_name}."

print "Let's talk about %s." % my_name"

在Python中只有一种方法可以打印同一行吗?在


Tags: 方法namemy情况abouttalkrubyprint
3条回答

也可以连接字符串。这不像pythonic,也使您无法控制输出的最终外观,但一些非程序员似乎觉得这更易于阅读(例如,如果您正在讨论一个特定的计算):

print "Let's talk about " + str( my_name )

str()函数可能是必需的,也可能不是必需的,但它允许您在不获取TypeError的情况下添加其他数据类型(如整数)。在

有关字符串格式()对%,请参阅此旧帖子: Python string formatting: % vs. .format

在ruby中,{}之间的部分是一个表达式。Python无法以这种方式在格式字符串内部计算表达式。在

print "Let's talk about #{my_name}."

在简单的情况下,表达式只包含一个变量,可以使用

^{pr2}$

或者其他答案中给出的其他选择。在

首选的方法是使用format()。例如

^{3}$

在Python中还有几种方法:

print "let's talk about this %s" % my_name
print "let's talk about this {:s}".format(my_name)
print "let's talk about this", my_name

它们都产生相同的输出。但是,鼓励使用.format方法(从pythonv2.6开始就可用)而不是老式的%(引用What's New in 3.0:“。%运算符仍然受支持;它将在python3.1中被弃用,稍后会从语言中删除。“)

最后,在pythonv3.x中,print是一个函数,因此所有print语句都需要()。在

相关问题 更多 >