我正在尝试教我的朋友Python并向他展示了3种打印不同类型变量的方法,而不需要先将它们转换为字符串,但他想知道应该使用哪一种,我不知道我是谁很长一段时间没有使用过Python,所以希望你可以帮助我们:
print("There are %d people in total" % num_people)
或
print("There are", num_people, "people in total")
或
print("There are {} people in total".format(num_people))
我知道format方法可以执行其他更强大的字符串操作操作,但除此之外我不确定哪种方法是首选方法。我不知道为什么第一种方法存在,因为第二种方法似乎更简单。
对此有何想法?谢谢!
答案 0 :(得分:2)
Python样式指南建议使用format
方法。以下是该文档的链接:"PEP 3101"
答案 1 :(得分:1)
关于%
与.format
,请参阅类似this之类的问题,正如其他人所指出的那样。
关于
print("There are", num_people, "people in total")
这实际上只是print()
功能提供的便利。签名只允许打印一个参数,而是允许多个参数,这些参数分别转换为字符串,然后用一个空格(默认情况下)作为分隔符连接。这对于快速输出多个对象非常有用,但通常不适合生成格式化输出。只打印以高精度给出的十进制数可能会产生有限可用性的输出。有关其功能的更多信息,请参阅the documentation of print()。