0

我是 python 新手,需要一些帮助。

我有一个变量

q = request.GET['q']

如何在其中插入变量q

url = "http://search.com/search?term="+q+"&location=sf"

现在我不确定公约是什么?我习惯了 PHP 或 javascript,但我正在学习 python,如何动态插入变量?

4

3 回答 3

5

使用String的格式化方法:

url = "http://search.com/search?term={0}&location=sf".format(q)

但当然你应该对 q 进行 URL 编码:

import urllib
...
qencoded = urllib.quote_plus(q)
url = 
  "http://search.com/search?term={0}&location=sf".format(qencoded)
于 2012-09-27T06:27:14.750 回答
2

一种方法是使用urllib.urlencode(). 它接受以键值对作为参数和值的字典(或关联数组或任何你称之为的),你可以将其编码为 url

    from urllib import urlencode  
    myurl = "http://somewebsite.com/?"  
    parameter_value_pairs = {"q":"q_value","r":"r_value"}  
    req_url = url +  urlencode(parameter_value_pair)

这会给你"http://somewebsite.com/?q=q_value&r=r_value"

于 2012-09-27T06:41:45.713 回答
2
q = request.GET['q']
url = "http://search.com/search?term=%s&location=sf" % (str(q))

使用它会更快...

于 2012-09-27T07:07:31.607 回答