用数学运算符连接数字序列而不执行运算

2024-09-28 21:29:30 发布

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

我必须将一篇论文的DOI“10.1145/3175684.3175695”连接到URLhttp://api.semanticscholar.org/v1/paper/的末尾。但是当我尝试这样做的时候,python会将除法后的结果连接起来。有没有办法告诉python不要把/中间的10.1145/3175684.3175695符号当作除法运算符。你知道吗

id = 10.1145/3175684.3175695
url = '{}{}'.format("http://api.semanticscholar.org/v1/paper/",id)
# Make a get request with the parameters.
response = requests.get(url)
print(response.content)

Tags: orgapiidurlgetresponsedoi符号
2条回答

这个问题是因为您没有将DOI号括在引号中以使其成为字符串。您会注意到,基本URL是一个字符串,其中有正斜杠,但没有相同的问题。你知道吗

您具有以下功能:

doi = 10.1145/3175684.3175695

python将其解释为如下数学表达式:

doi = 10.1145 / 3175684.3175695

您需要用单引号(或双引号)将其括起来,使其成为字符串文字:

doi = '10.1145/3175684.3175695'
base_url = 'http://api.semanticscholar.org/v1/paper/'
url = base_url + doi
s = "http://api.semanticscholar.org/v1/paper/"
v =  "10.1145/3175684.3175695"
t = s+v

t将导致

 'http://api.semanticscholar.org/v1/paper/10.1145/3175684.3175695'

相关问题 更多 >