python 一个变量包含列表。如何组合成一个列表

python one variable contains lists. how to combine into a list

我从网站上抓取数据,并使用一个变量来包含所有数据列表。

x = [a,d,d,d] [a,f,f,f] [a,f,g,r]

如何将它们放入一个列表中,如下所示:

x = [[a,d,d,d],[a,f,f,f],[a,f,g,r]]

我使用的代码:

from urllib.request import urlopen
from bs4 import BeautifulSoup
import csv

url = "http://www.dicj.gov.mo/web/en/information/DadosEstat_mensal/2018/report_en.xml?id=5"
html = urlopen(url)
soup = BeautifulSoup(html, 'xml')

my_data = soup.find_all('RECORD')[0:]
for tds in my_data:
   x = [i.get_text() for i in tds.find_all('DATA')]
   print(x)

所以你每次通过 for 循环都会有一个新的 x。您可以将每个 x 附加到列表中。

xs = []
for tds in my_data:
    x = [i.get_text() for i in tds.find_all('DATA')]
    print(x)
    xs.append(x)

或者您可以使用列表理解并在一行中完成所有操作。

xs = [[i.get_text() for i in tds.find_all('DATA')] for tds in my_data]