在python中,可以用string的值和占位符声明一个变量吗?

2024-06-25 05:31:28 发布

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

我试图将一个长字符串值初始化为一个变量,但是这个字符串有一个单词不能是常量,就像这个例子。在

假设我想存储这样的字符串。在

str = "https://stackoverflow.com/users/7833397/meskerem" 

但是假设数字7833397会随着时间的推移而改变,所以我试图找到一种方法来存储字符串,同时对数字进行通配符。但我不确定这是否可以用Python实现


Tags: 方法字符串httpscom时间数字单词stackoverflow
3条回答

可以使用“%s”(字符串格式语法)

modified_str = "https://stackoverflow.com/users/%s/meskerem" % (number,)

首先,避免使用标识符str。其次,可以使用两种字符串格式方法将占位符放入字符串中:

旧式

“old”样式使用C样式的字符串格式化语法,并对字符串执行“modulo”操作来执行实际的插入操作。可以将多个替换作为元组传递:

s = "foo%sbaz" # expects a string
print(s%"bar")
s2 = "foo%s%d"
print(s2%("bar", 2))

New style

“new”样式使用一个泛型{},可以使用str.format()方法填充它。多个替换作为解压元组传递,即作为多个参数:

^{pr2}$

This site可以作为参考。在

使用^{}方法。在

template = "https://stackoverflow.com/users/{0}/meskerem"

# Lots of stuff happens here

url = template.format("7833397")

format方法支持它自己的小型语言,根据您的用例,您可能会发现命名模板的各个部分更加直观:

^{pr2}$

相关问题 更多 >