Python 写点什么而不是';无';当循环返回空时

Python 写点什么而不是';无';当循环返回空时,python,pandas,beautifulsoup,Python,Pandas,Beautifulsoup,我正在使用BeautifulSoup解析原始html,使用一组七个for循环来写入七个列表。然后,我将这些列表写入熊猫数据框。为了做到这一点,所有列表的长度必须相等。但是,由于没有找到某些条目的数据,七个列表中的一个总是返回得更短。我希望它在列表中放一些东西(比如“缺少”),即使它什么也没找到,这样所有列表最终都会有相同数量的条目。下面是七个循环中仅有两个的简化示例: #FIRST LOOP retweets = data.find_all(class_='Something') for rt

我正在使用BeautifulSoup解析原始html,使用一组七个for循环来写入七个列表。然后,我将这些列表写入熊猫数据框。为了做到这一点,所有列表的长度必须相等。但是,由于没有找到某些条目的数据,七个列表中的一个总是返回得更短。我希望它在列表中放一些东西(比如“缺少”),即使它什么也没找到,这样所有列表最终都会有相同数量的条目。下面是七个循环中仅有两个的简化示例:

#FIRST LOOP
retweets = data.find_all(class_='Something')
for rt in retweets:
    rt2 = rt.get_text()
firstlist.append(rt2[0])

#SECOND LOOP
replies = data.find_all(class_='Something_else')
for rp in replies:
    rp2 = rp.get_text()
secondlist.append(rp2[0])
第一个列表通常更短,因此我尝试了下面的代码,但列表长度仍然相同。它似乎不把'失踪'时,失踪

#FIRST LOOP
retweets = data.find_all(class_='Something')
for rt in retweets:
    rt2 = rt.get_text()
if rt2 is not None:
    firstlist.append(rt2)
else:
    firstlist.append('missing')

在没有看到原始HTML的情况下,我认为文件中的条目完全丢失了。在这种情况下,
find_all
返回的列表将仅与数据中存在的条目数相同。您可以做的是检查每个列表的长度,然后在第一个列表中填入所需数量的
缺失值(如果较短)


另一种可能是列表中不包含“None”,而是一个空字符串,您需要对此进行检查。

您已经调试过为什么它没有追加missing,也许长度更短,而不是缺少/空值?