从嵌套列表中删除空列表

Dropping Empty Lists from Nested List

所以我有一个函数,它 return 是一个包含空列表或系列的列表。我遍历一个代码列表,对于每个代码,它将 return 一个空列表或系列,并将它们存储在一个列表中。

但是,在遍历所有内容之后,我希望能够删除空列表,并且列表中只包含系列。

def get_revenue_growth(ticker) -> pd.DataFrame:

income_statement_annually = fa.financial_statement_growth(ticker, FA_API_KEY, period="annual")

if  'revenueGrowth' in income_statement_annually.index:
    
    revenue_growth = income_statement_annually.loc['revenueGrowth']
    exchange_df = pd.DataFrame({ticker : revenue_growth})        
    exchange_df.index = pd.to_datetime(pd.Series(exchange_df.index))
    exchange_df = exchange_df[exchange_df.index.year >= 1998]
    exchange_df = exchange_df.sort_index()
    
    print('Getting Revenue Growth for ' + ticker + ': Passed')
    
else:
    print('Getting Revenue Growth for ' + ticker + ': Failed')
    
    exchange_df = []
    
return exchange_df

这是我通过这个调用的函数:

revenue_growth = [get_revenue_growth(t) for t in tickers]

Here is what the output looks like...

所以我想要实现的是删除所有空列表。我尝试了这个 list2 = [x for x in list1 if x != []] 但它没有用。

您可以简单地通过以下方式解决:

list2 = [x for x in list1 if len(x)>0]

看这个例子-

mylist = [] 

if len(mylist) == 0:
    del mylist # Deletes the Empty List
else:
    # Do Something else

为您的程序修改此部分