import requests
def get(url):
if url[:7] == 'http://':
if url[7:11] == 'www.':
print url
response = requests.get(url)
if response.status_code == 200:
return 'ok'
else:
return 'error'
else:
print(url)
url = 'http://www.' + url[7:]
get(url)
else:
print(url)
url = 'http://' + url
get(url)
print get('example.com')
谁能告诉我为什么这段代码返回“无”
最佳答案
您不会从对 get()
函数的递归调用中返回结果。
您需要返回递归调用 get()
函数的结果,示例 -
import requests
def get(url):
if url[:7] == 'http://':
if url[7:11] == 'www.':
print url
response = requests.get(url)
if response.status_code == 200:
return 'ok'
else:
return 'error'
else:
print(url)
url = 'http://www.' + url[7:]
return get(url)
else:
print(url)
url = 'http://' + url
return get(url)
print get('example.com')
关于python - 为什么请求返回 "None"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31628130/