python 映射列表 学习
列表映射是个非常有用的方法,通过对列表的每个元素应用一个函数来转换数据,可以使用一种策略或者方法来遍历计算每个元素。
例如:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
params = { "server" : "mpilgrim" , \ "database" : "master" , \ "uid" : "sa" , \ "pwd" : "secret" \ } print [ "%s=%s" % (k, params[k]) for k in params.keys()] print ';' .join([ "%s=%s" % (k, params[k]) for k in params.keys()]) 返回结果为: 返回结果为: [ 'uid=sa' , 'pwd=secret' , 'database=master' , 'server=mpilgrim' ] 还可以改进下,把元组转化成字符串,使用join函数方法。 'uid=sa;pwd=secret;database=master;server=mpilgrim' (join函数不仅使用于元组还使用于列表,功能是字符串化) split跟join相反,把字符串转换成元组 看如下应用 <pre name= "code" class = "python" >>>> <span style= "font-family: Arial, Helvetica, sans-serif;" >str = 'server=mpilgrim;uid=sa;database=master;pwd=secret' </span></pre>>>> str.split( ';' )<br> [ 'server=mpilgrim' , 'uid=sa' , 'database=master' , 'pwd=secret' ]<br> >>> str.split( ';' , 1 )<br> [ 'server=mpilgrim' , 'uid=sa;database=master;pwd=secret' ]<br> >>> str.split( ';' , 2 )<br> [ 'server=mpilgrim' , 'uid=sa' , 'database=master;pwd=secret' ] <pre class = "brush:java;" ></pre> <p></p> <p><br> </p> <p><strong>列表映射用例:</strong></p> <pre class = "brush:java;" ><pre class = "brush:java;" >>>> li = [ 1 , 9 , 8 , 4 ] >>> [elem* 2 for elem in li] 1 [ 2 , 18 , 16 , 8 ] >>> li [ 1 , 9 , 8 , 4 ] </pre><br><br></pre> <br> |