Python - TypeError:类型' NoneType'的对象没有len()

时间:2018-01-04 13:38:27

标签: python

我编写了一个代码,用于从网站中删除一组50个项目中的两个值,并将它们存储到列表中。但是,当我通过len()检查有多少值时,我收到以下错误:

TypeError: object of type 'NoneType' has no len()

这是我的代码:

from datetime import datetime

response = links

def get_links(response):
    list_links = []
    for i in range(len(response)):
        url = response[i].select('a')[0]['href']
        date = datetime.strptime(response[i].select('span.field-content')[1].text, '%A, %B %d, %Y')
        list_links.append((url, date))

get_links(response)

page = get_links(response)

assert len(page) == 50

任何想法?

1 个答案:

答案 0 :(得分:1)

你的get_links函数没有返回任何内容添加一个return语句+迭代列表更加优化

这是使用return语句

的代码的改进版本
def get_links(response):
    list_links = []
    for link in response:
        url = link.select('a')[0]['href']
        date = datetime.strptime(link.select('span.field-content')[1].text, '%A, %B %d, %Y')
        list_links.append((url, date))
    return list_links