如何在 python 中设置 % 的全局值
How to set the global value of % in python
您可以像这样更轻松地将变量插入字符串:
print("I like %s a lot!"% spam)
我希望可以这样说:
% = spam
只要我在字符串中有 % 我想要它,就再也不必处理垃圾邮件了。
像这样:
% = spam
print("I like %s")
print("Do you like %s?")
print("I like %s a lot.")
有没有办法将 % 设置为全局常量,这样您就不必在末尾继续添加 % 垃圾邮件?我的意思是,如果您要打印大量包含垃圾邮件的字符串,那么一直输入相同的内容就没有意义了。
如果你的意思是你想预先将值替换到字符串中,只需这样做并保存替换的字符串以供稍后打印。
message = "I like %s a lot!" % spam
# do whatever
print(message)
这是我对您问题含义的最佳猜测。 %
不是真正的 "variable",您可以设置一个独立于字符串的值。相反,字符串中的“%s”被替换为您在执行时替换它的任何内容 "...%s..." % blah
。所以如果你想保留某个替换值,你可以随时这样做,如上所示。
根据您的编辑,另一种方法是编写您自己的函数来替换您想要的内容,然后使用该函数代替 print
。类似于:
def spamify(message):
print(message % spam)
那你可以做
spam = "blah"
spamify("I like %s!")
spamify("Do you like %s?")
spam = "other stuff"
spamify("I like %s!")
spamify("Do you like %s?")
等等。
您可以像这样更轻松地将变量插入字符串:
print("I like %s a lot!"% spam)
我希望可以这样说:
% = spam
只要我在字符串中有 % 我想要它,就再也不必处理垃圾邮件了。
像这样:
% = spam
print("I like %s")
print("Do you like %s?")
print("I like %s a lot.")
有没有办法将 % 设置为全局常量,这样您就不必在末尾继续添加 % 垃圾邮件?我的意思是,如果您要打印大量包含垃圾邮件的字符串,那么一直输入相同的内容就没有意义了。
如果你的意思是你想预先将值替换到字符串中,只需这样做并保存替换的字符串以供稍后打印。
message = "I like %s a lot!" % spam
# do whatever
print(message)
这是我对您问题含义的最佳猜测。 %
不是真正的 "variable",您可以设置一个独立于字符串的值。相反,字符串中的“%s”被替换为您在执行时替换它的任何内容 "...%s..." % blah
。所以如果你想保留某个替换值,你可以随时这样做,如上所示。
根据您的编辑,另一种方法是编写您自己的函数来替换您想要的内容,然后使用该函数代替 print
。类似于:
def spamify(message):
print(message % spam)
那你可以做
spam = "blah"
spamify("I like %s!")
spamify("Do you like %s?")
spam = "other stuff"
spamify("I like %s!")
spamify("Do you like %s?")
等等。