[英]Does response from requests.get() use the same memory or allocates new memory each time in python?
我使用dict_a['response'] = requests.get(given_url)
使用请求模块以给定的频率从某些网站获取数据。 返回的响应( requests.get(given_url)
)是与字典相对应的json对象,稍后将使用它。
每次在python中,requests.get(given_url)的响应是否使用相同的内存或分配新的内存? 如果是稍后的情况,则dict_a ['response']可能会更改,恕不另行通知。 恐怕会发生这种情况,并且dict_a['response'] = copy.deepcopy(requests.get(given_url))
使用dict_a['response'] = copy.deepcopy(requests.get(given_url))
。 似乎完全没有必要,所以我选择问这个问题以确保不需要这样做。
字典不重用:
>>> url = 'http://google.com'
>>> requests.get(url) is requests.get(url)
False
Requests.get是一种方法。 除涉及全局变量(请求不使用)的异常情况外,每次调用方法时,方法级别变量都是唯一绑定的。 方法返回后,返回的对象将绑定到您为其分配的任何名称。
所以如果你做类似的事情
dict[a] = requests.get(url1)
dict[b] = requests.get(url2)
您不必担心dict [a]会发生神奇的变化以包含来自url2的响应。 但是当然
dict[a] = requests.get(url1)
dict[a] = requests.get(url2)
将导致dict [a]发生变化。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.