如何对列表的每个元素执行操作并将结果放在Python的新列表中?

mor*_*cry 1 python loops list

嘿,我想解决这个问题:

让我们从包含元素和空白列表的列表开始.

L = [a, b, c]  
BL = [  ]
Run Code Online (Sandbox Code Playgroud)

我需要做的是在L [0]上执行任务并将结果放入BL [0].然后在L [1]上执行任务并将结果输入BL [1].然后当然与列表中的最后一个元素相同.导致

L = [a, b, c]
BL =[newa, newb, newc]
Run Code Online (Sandbox Code Playgroud)

我希望你明白我想弄清楚的是什么.我是编程的新手,我猜这可能是用for循环完成但我一直都会遇到错误.

好的,我这就是我尝试过的.注意:链接是一个链接列表.

def blah(links):
   html = [urlopen( links ).read() for link in links]
   print html[1]
Run Code Online (Sandbox Code Playgroud)

我收到此错误:

Traceback (most recent call last):
File "scraper.py", line 60, in <module>
main()
File "scraper.py", line 51, in main
getmail(links)
File "scraper.py", line 34, in getmail
html = [urlopen( links ).read() for link in links]
File "/usr/lib/python2.6/urllib.py", line 86, in urlopen
return opener.open(url)
File "/usr/lib/python2.6/urllib.py", line 177, in open
fullurl = unwrap(toBytes(fullurl))
File "/usr/lib/python2.6/urllib.py", line 1032, in unwrap
url = url.strip()
AttributeError: 'list' object has no attribute 'strip'
Run Code Online (Sandbox Code Playgroud)

Sex*_*ast 7

很简单,这样做:

BL = [function(x) for x in L]
Run Code Online (Sandbox Code Playgroud)


Kar*_*tel 5

好吧,我继承了我试过的东西..注意:链接是一个链接列表.

html = [urlopen( links ).read() for link in links]
Run Code Online (Sandbox Code Playgroud)

在这里,您已经要求Python迭代links,使用link每个元素的名称...并且每个元素都link调用urlopen... links,即整个列表.想必你link每次都想通过一个给定的.