如果有一个字典:dict_nu = {},如果要向字典中添加值,则可以用
1
|
dict_nu[
'k1'
]
=
'v1'
|
如果有一个列表:list_nu =[],如果要向列表中添加元素,则可以用
1
|
list_nu.append[
'tony'
]
|
有如下题目:
1
|
list_nu
=
[
11
,
22
,
33
,
44
,
55
,
66
,
77
,
88
,
99
,
90
]
|
要求:
大于66的对应'k1':[小于66的数字]
小于66的对应'k2':[大于66的数字]
即dict_nu {'k1':[小于66的数字],'k2':[大于66的数字]}
1
|
{
'k2'
: [
77
,
88
,
99
,
90
],
'k1'
: [
11
,
22
,
33
,
44
,
55
,
66
]}
|
方法①
1
2
3
4
5
6
7
8
9
10
11
12
|
list_nu
=
[
11
,
22
,
33
,
44
,
55
,
66
,
77
,
88
,
99
,
90
]
list_1
=
[]
list_2
=
[]
dict_nu
=
{}
for
num
in
list_nu:
if
num >
66
:
list_1.append(num)
dict_nu[
'k1'
]
=
list_1
else
:
list_2.append(num)
dict_nu[
'k2'
]
=
list_2
print
dict_nu
|
方法②
1
2
3
4
5
6
7
|
dic
=
{
'k1'
:[],
'k2'
:[]}
for
nu
in
list_nu:
if
nu >
66
:
dic[
'k1'
].append(nu)
else
:
dic[
'k2'
].append(nu)
print
dic
|
方法③
1
2
3
4
5
6
7
8
|
dic
=
{}
for
nu
in
list_nu:
if
nu >
66
:
if
'k2'
in
dic.keys():
#如果k2在在字典dic中,那么追加一个值
dic[
'k2'
].append(nu)
else
:
#如果k2不在字典dic中,那么就给k2赋一个值nu dic['k2'] = [nu,] else: if 'k1' in dic.keys():
#如果k1在在字典dic中,那么追加一个值
dic[
'k1'
].append(nu)
else
:
#如果k1不在字典dic中,那么就给k2赋一个值nu
dic[
'k1'
]
=
[nu,]
print
dic
|
有如下内容文件log.txt:
alex|123|1 eric|123|1 tony|123|1 susan|123|1
要求将内容以如下格式打印出来:
dic = {
'alex':[123,1],
'eirc':[123,1],
'tony':[123,1],
'susan':[123,1]
}
实现的语句如下:
obj= () line_list = obj.readlines() obj.close() dic = {} for line line_list: line = line.strip() ele_list = line.split() dic[ele_list[]] = ele_list[:] print dic
本文转自027ryan 51CTO博客,原文链接:http://blog.51cto.com/ucode/1716557,如需转载请自行联系原作者