python 代码中的缩进错误

Indentation Error in python code

def get_top_grossing_movie_list(url):
movies_list = []
r = requests.get(url)
for each_url in BeautifulSoup(r.text).select('.title a[href*="title"]'):
    movie_title = each_url.text 
    if movie_title != 'X':
        movies_list.append((movie_title, each_url['href']))
return movies_list

在第 4 行,我得到:

Indentation Error: unindent does not match any outer indentation level

但我觉得我的缩进是正确的。请给出解决方法。

请使用 4 次空格键而不是 Tab 键缩进。您可能收到此错误的原因是制表符可能不等于 4 个空格。

def get_top_grossing_movie_list(url): 之后的第二行必须缩进,其余所有代码也必须缩进:

def get_top_grossing_movie_list(url):
    movies_list = []
    r = requests.get(url)
    for each_url in BeautifulSoup(r.text).select('.title a[href*="title"]'):
        movie_title = each_url.text 
        if movie_title != 'X':
            movies_list.append((movie_title, each_url['href']))
    return movies_list 

发生Indentation Error时,有如下情况:

  1. 混合选项卡和 space

  2. 第一行需要加缩进后调用defclass

你的问题属于第一个陈述,所以你的代码必须如下:

def get_top_grossing_movie_list(url):
    movies_list = []
    r = requests.get(url)
    for each_url in BeautifulSoup(r.text).select('.title a[href*="title"]'):
        movie_title = each_url.text 
        if movie_title != 'X':
            movies_list.append((movie_title, each_url['href']))
    return movies_list