【发布时间】:2022-04-08 05:03:16
【问题描述】:
%s 在 Python 中是什么意思?下面这段代码有什么作用?
比如……
if len(sys.argv) < 2:
sys.exit('Usage: %s database-name' % sys.argv[0])
if not os.path.exists(sys.argv[1]):
sys.exit('ERROR: Database %s was not found!' % sys.argv[1])
【问题讨论】:
-
不推荐使用
%运算符,取而代之的是更强大的str.format方法,请参阅PEP-3101。 -
实际上 PEP 说“在 Python 3.0 中,% 运算符由更强大的字符串格式化方法补充”,并且它被向后移植到 Python 2.6。我来自哪里“补充”意味着添加,而不是替换。 PEP 没有说“被取代”,并且在 PEP 的任何部分都没有说 % 运算符已被弃用(但它确实说其他东西在底部已被弃用)。您可能更喜欢 str.format ,这很好,但在 PEP 说它已被弃用之前,声称它不被弃用是没有意义的。