Python “如何修复”;名称错误:名称';棋盘格开始';“未定义”;

Python “如何修复”;名称错误:名称';棋盘格开始';“未定义”;,python,Python,如何修复这些错误代码 回溯(最近一次调用上次):文件 “/Users/erzajullian/PycharmProjects/Checker/topmail.py”,第9行,在 类检查器_start(object):文件“/Users/erzajullian/PycharmProjects/checker/topmail.py”,第16行,在 棋盘格开始 打印(checker\u start().get\u token())名称错误:未定义名称“checker\u start” 这是密码 imp

如何修复这些错误代码

回溯(最近一次调用上次):文件 “/Users/erzajullian/PycharmProjects/Checker/topmail.py”,第9行,在 类检查器_start(object):文件“/Users/erzajullian/PycharmProjects/checker/topmail.py”,第16行,在 棋盘格开始 打印(checker\u start().get\u token())名称错误:未定义名称“checker\u start”

这是密码

import requests
from bs4 import BeautifulSoup


class output(object):
    pass


class checker_start(object):
    def get_token(self):
        data = requests.get("https://mail.topmail.com/preview/mail/")
        soup = BeautifulSoup(data.text, "lxml")
        token_1 = soup.find("input", {"name": "form_token"})["value"]
        return token_1

    print(checker_start().get_token())

我的代码怎么了?

您的
打印行缩进(checker\u start().get\u token())
错误。您正试图实例化类
checker\u start
的对象,并在类定义本身的代码块(范围)中调用其方法
get\u token
。因此,您会得到一个
名称错误

Python中最显著的特性之一是带有缩进的代码块。在Python中,缩进代码并不是风格的问题(与大多数编程语言一样),而是一种要求

在大多数其他编程语言中,缩进仅用于帮助使代码看起来漂亮。但在Python中,它是指示语句属于哪个代码块所必需的

试试看:

导入请求
从bs4导入BeautifulSoup
类输出(对象):
通过
类检查器\u开始(对象):
def get_令牌(自身):
数据=请求。获取(“https://mail.topmail.com/preview/mail/")
soup=BeautifulSoup(data.text,“lxml”)
token_1=soup.find(“input”,{“name”:“form_token”})[“value”]
返回令牌1
#删除行缩进
打印(checker\u start().get\u token())

您的最后一行,
打印(checker\u start().get\u token())
缩进了一级,可能不应该缩进。

非常感谢!我是python新手,所以解决方案非常简单,我认为类上的错误代码。但在最后一行,谢谢你,我没料到!