猿问

无法理解将结果传递给另一个函数和将结果重新调整给另一个函数之间的区别

我在 python 中使用两个函数编写了一个脚本。第一个函数应该从网页中获取一些链接,另一个函数应该在控制台中打印它。


我的问题是,当我使用return关键字将结果从一个函数传递到另一个函数时有什么区别return get_info(elem)?通常只做这个get_info(elem),我可以将东西从一个函数传递到另一个函数,然后什么时候选择这个return get_info(elem),为什么?


一个例子可能是:


import requests

from bs4 import BeautifulSoup


def get_links(url):

    response = requests.get(url)

    soup = BeautifulSoup(response.text,"lxml")

    elem = soup.select_one(".info h2 a[data-analytics]").get("href")

    get_info(elem)  #why this one

    return get_info(elem) #or why this


def get_info(link):

    print(link)


萧十郎
浏览 138回答 2
2回答

凤凰求蛊

return get_info(elem)将调用该get_info()函数,然后获取它返回的任何内容,并从get_links(). 大致相当于:temp = get_info(elem)return temp但由于get_info()不返回任何内容,它只是打印链接,在return语句中使用它没有多大意义。只写get_info(elem)调用函数而不对其返回值执行任何操作(如果它返回任何内容)。
随时随地看视频慕课网APP

相关分类

Python
我要回答