Skip to content

Commit 8d33752

Browse files
committed
dic setdefault
1 parent 20521c1 commit 8d33752

File tree

1 file changed

+26
-0
lines changed

1 file changed

+26
-0
lines changed
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
def usual_dict(dict_data):
2+
newdata = {}
3+
for k, v in dict_data:
4+
if k in newdata:
5+
newdata[k].append(v)
6+
else:
7+
newdata[k] = [v]
8+
return newdata
9+
10+
def setdefault_dict(dict_data):
11+
newdata = {}
12+
for k, v in dict_data:
13+
newdata.setdefault(k, []).append(v)
14+
return newdata
15+
16+
def test_setdef():
17+
dict_data = (('key1', 'value1'),
18+
('key1', 'value2'),
19+
('key2', 'value3'),
20+
('key2', 'value4'),
21+
('key2', 'value5'),)
22+
print(usual_dict(dict_data))
23+
print(setdefault_dict(dict_data))
24+
25+
if __name__ == '__main__':
26+
test_setdef()

0 commit comments

Comments
 (0)