Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/290.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python将文本分配给新变量_Python_List_Variables - Fatal编程技术网

Python将文本分配给新变量

Python将文本分配给新变量,python,list,variables,Python,List,Variables,在Python中,我使用BeautifulSoup解析文本。我想将一组“str”对象保存到列表中。以下代码不会运行,但应该会想到: listings = soup.find_all('h6') for i in listings: projecturls[i] = i.find_all('a', href=True)[0]['href'] 所以我想循环遍历元素“listings”并提取一个字符串。然后我想将这个字符串保存到projectURL中,我想将其作为一个列表。但我得到了以下错误

在Python中,我使用BeautifulSoup解析文本。我想将一组“str”对象保存到列表中。以下代码不会运行,但应该会想到:

listings = soup.find_all('h6')
for i in listings:
    projecturls[i] = i.find_all('a', href=True)[0]['href']
所以我想循环遍历元素“listings”并提取一个字符串。然后我想将这个字符串保存到projectURL中,我想将其作为一个列表。但我得到了以下错误:

NameError: name 'projecturls' is not defined
我如何定义这一点?还是有更好的方法来做我想做的事


我认为动态定义N个变量也可以,但这不是首选。

projecturl
定义为列表对象,然后使用
list.append
方法在其中添加一项:

listings = soup.find_all('h6')
projecturls = [] # <-------------
for i in listings:
    url = i.find_all('a', href=True)[0]['href']
    projecturls.append(url) # <------
listings=soup.find_all('h6'))

projecturls=[]#将
projecturls
定义为列表对象,然后使用
list.append
方法在其中添加项目:

listings = soup.find_all('h6')
projecturls = [] # <-------------
for i in listings:
    url = i.find_all('a', href=True)[0]['href']
    projecturls.append(url) # <------
listings=soup.find_all('h6'))

projecturls=[]#您还可以使用列表理解:

listings = soup.find_all('h6')
projecturls = [i.find_all('a', href=True)[0]['href'] for i in listings]
map
功能:

listings = soup.find_all('h6')
projecturls = list(map(lambda i: i.find_all('a', href=True)[0]['href'], listings))

您还可以使用列表理解:

listings = soup.find_all('h6')
projecturls = [i.find_all('a', href=True)[0]['href'] for i in listings]
map
功能:

listings = soup.find_all('h6')
projecturls = list(map(lambda i: i.find_all('a', href=True)[0]['href'], listings))

看起来“projectURL”是一本字典。将
projecturls={}
添加到该循环的正上方以初始化此循环。是否定义了
projecturls
?看起来“projecturls”是一个字典。将
projecturl={}
添加到该循环的正上方以初始化该循环。是否定义了
projecturl