为什么我一直收到错误 "name 'amazon_soup' is not defined"

Why do I keep on getting the error "name 'amazon_soup' is not defined"

不确定为什么会收到错误消息?

因为您将 amazon_soup 用作该方法的参数,并将其用作未定义的变量。

应该是:

print(getnextpage(geturl(amazon_url)))

您声明的 amazon_soup 变量是方法 geturl 的局部变量。

当前上下文中未定义变量“amazon_soup”。在 python 和许多其他语言中,定义变量的“级别”很重要。这意味着您无法从您所在的“级别”之外访问它。在您的情况下,变量是在函数中定义的,因此无法在此函数之外访问它。更改第 4 行中的代码,在开头定义 amazon_soup,就像您对 amazon_url 所做的那样。所以只需添加

amazon_soup = None

在第 4 行的开头。然后 运行 第 4 行和第 5 行。