[問題] 匯入itemgetter 的結果.書上怎麼會較簡單
>>> from operator import itemgetter
>>> sorted(counts.items(), key=itemgetter(1), reverse=True)
[('NN', 13162), ('IN', 10616), ('AT', 8893), ('NP', 6866), (',', 5133),
('NNS', 5066), ('.', 4452), ('JJ', 4392), ('CC', 2664), ('VBD', 2524),
('NN-TL', 2486), ('VB', 2440), ('VBN', 2269), ('RB', 2166), ('CD', 2020),
('CS', 1509), ('VBG', 1398), ('TO', 1237), ('PPS', 1056), ('PP$', 1051),
('MD', 1031), ('AP', 923), ('NP-TL', 741), ('``', 732), ('BEZ', 730),
('BEDZ', 716), ("''", 702), ('JJ-TL', 689), ('PPSS', 602), ('DT', 589),
('BE', 525), ('VBZ', 519), ('NR', 495), ('RP', 482), ('QL', 468), ('PPO',
412), ('WPS', 395), ('NNS-TL', 344), ('WDT', 343), ('WRB', 328), ('BER',
328), ('OD', 309), ('HVZ', 301), ('--', 300), ('NP$', 279), ('HV', 265),
('HVD', 262), ('*', 256), ('BED', 252), ('NPS', 215), ('BEN', 212), ('NN$',
210), ('DTI', 205), ('NP-HL', 186), ('ABN', 183), ('NN-HL', 171), ('IN-TL',
164), ('EX', 161), (')', 151), ('(', 148), ('JJR', 145), (':', 137), ('DTS',
136), ('JJT', 100), ('CD-TL', 96), ('NNS-HL', 92), ('PN', 89), ('RBR', 88),
('VBN-TL', 87), ('ABX', 73), ('NN$-TL', 69), ('IN-HL', 65), ('DOD', 64),
('DO', 63), ('BEG', 57), (',-HL', 55), ('VBN-HL', 53), ('AT-TL', 50),
('NNS$', 50), ('CD-HL', 50), ('JJS', 49), ('JJ-HL', 46), ('CC-TL', 46), ("'",
46), ('MD*', 43), ('VBZ-HL', 39), ('PPL', 36), ('PPSS+MD', 31), ('PPS+BEZ',
31), ('OD-TL', 30), ('DOZ', 26), ('VB-HL', 25), ('NR$', 24), ('WP$', 22),
('FW-NN', 22), ('PPLS', 21), ('ABL', 21), ('PPSS+BER', 20), (')-HL', 20),
('(-HL', 20), ('NNS$-TL', 20), ('.-HL', 20), ('PPSS+HV', 19), ('PPSS+BEM',
18), ('HVN', 18), ('DO*', 17), ('NPS$', 17), ('FW-NN-TL', 16), ('DOD*', 15),
('RB-HL', 15), ('NPS-TL', 15), ('VBG-TL', 15), ('NR-TL', 14), ('AT-HL', 14),
('HVG', 14), ('FW-IN', 14), ('BEM', 13), ('DOZ*', 13), ('NN-TL-HL', 12),
(':-HL', 12), ('DT+BEZ', 12), ('FW-JJ-TL', 12), ('VBG-HL', 12), ('UH', 12),
('QLP', 12), ('NP$-TL', 11), ('WPO', 9), ('BEZ*', 8), ('DTX', 8), ('RB-TL',
8), ('VB-TL', 8), ('PPS+MD', 8), ('AP-HL', 7), ('CC-HL', 7), ('FW-AT-TL', 6),
('VBD-HL', 6), ('TO-HL', 6), ('MD-HL', 5), ('RBT', 5), ('BER*', 4),
('JJR-HL', 4), ('RP-HL', 4), ('JJR-TL', 4), ('PPS+HVZ', 4), ('BEZ-HL', 3),
('BEDZ*', 3), ('NPS-HL', 3), ('NN-NC', 3), ('PP$$', 3), ('FW-JJ', 3),
('FW-AT', 3), ('NR-HL', 2), ('WPS+BEZ', 2), ('EX+BEZ', 2), ('JJT-HL', 2),
('DTI-HL', 2), ('NNS$-HL', 2), ('CD$', 2), ('FW-NNS', 2), ('NN$-HL', 2),
('FW-IN+NN', 2), ('JJS-TL', 2), ('HVD*', 2), ('WQL', 1), ('AP$', 1),
('JJ-NC', 1), ('VBN-TL-HL', 1), ('HVD-HL', 1), ('FW-PP$-NC', 1), ('MD-TL',
1), ('FW-IN+NN-TL', 1), ('BER-TL', 1), ('NP-TL-HL', 1), ('AP-TL', 1),
('FW-DT', 1), ('FW-WDT', 1), ('FW-VB-NC', 1), ('FW-CC', 1), ('CS-HL', 1),
('FW-CD', 1), ('ABN-HL', 1), ('BED*', 1), ('PPSS+HVD', 1), ('NNS-TL-HL', 1),
('PPSS-HL', 1), ('BE-HL', 1), ('TO-TL', 1), ('NR$-TL', 1), ('DT$', 1),
('MD+HV', 1), ('DT-HL', 1), ('UH-TL', 1), ('MD*-HL', 1), ('JJR-NC', 1),
('BER-HL', 1), ('PP$-TL', 1), ('WDT+BEZ', 1), ('NPS$-TL', 1), ('OD-HL', 1),
('QL-TL', 1), ('PPS+BEZ-HL', 1), ('DO-HL', 1), ('PN+HVZ', 1), ('HVZ*', 1),
('FW-*', 1), ('NP+BEZ', 1), ('FW-VB', 1), ('PN-HL', 1), ('BEDZ-HL', 1),
('VBD-TL', 1), ('PN$', 1), ('VB+PPO', 1), ('RB$', 1), ('*-HL', 1),
('FW-AT-HL', 1), ('RB+BEZ', 1), ('FW-IN-TL', 1), ('FW-IN+AT-TL', 1), ('N', 0)]
書上的結果是
[('N', 22226), ('P', 10845), ('DET', 10648), ('NP', 8336), ('V', 7313), ...]
為什麼會比較簡便!!!??
====================================================================
>>> [t for t, c in sorted(counts.items(), key=itemgetter(1), reverse=True)]
['NN', 'IN', 'AT', 'NP', ',', 'NNS', '.', 'JJ', 'CC', 'VBD', 'NN-TL', 'VB',
'VBN', 'RB', 'CD', 'CS', 'VBG', 'TO', 'PPS', 'PP$', 'MD', 'AP', 'NP-TL',
'``', 'BEZ', 'BEDZ', "''", 'JJ-TL', 'PPSS', 'DT', 'BE', 'VBZ', 'NR', 'RP',
'QL', 'PPO', 'WPS', 'NNS-TL', 'WDT', 'WRB', 'BER', 'OD', 'HVZ', '--', 'NP$',
'HV', 'HVD', '*', 'BED', 'NPS', 'BEN', 'NN$', 'DTI', 'NP-HL', 'ABN', 'NN-HL',
'IN-TL', 'EX', ')', '(', 'JJR', ':', 'DTS', 'JJT', 'CD-TL', 'NNS-HL', 'PN',
'RBR', 'VBN-TL', 'ABX', 'NN$-TL', 'IN-HL', 'DOD', 'DO', 'BEG', ',-HL',
'VBN-HL', 'AT-TL', 'NNS$', 'CD-HL', 'JJS', 'JJ-HL', 'CC-TL', "'", 'MD*',
'VBZ-HL', 'PPL', 'PPSS+MD', 'PPS+BEZ', 'OD-TL', 'DOZ', 'VB-HL', 'NR$', 'WP$',
'FW-NN', 'PPLS', 'ABL', 'PPSS+BER', ')-HL', '(-HL', 'NNS$-TL', '.-HL',
'PPSS+HV', 'PPSS+BEM', 'HVN', 'DO*', 'NPS$', 'FW-NN-TL', 'DOD*', 'RB-HL',
'NPS-TL', 'VBG-TL', 'NR-TL', 'AT-HL', 'HVG', 'FW-IN', 'BEM', 'DOZ*',
'NN-TL-HL', ':-HL', 'DT+BEZ', 'FW-JJ-TL', 'VBG-HL', 'UH', 'QLP', 'NP$-TL',
'WPO', 'BEZ*', 'DTX', 'RB-TL', 'VB-TL', 'PPS+MD', 'AP-HL', 'CC-HL',
'FW-AT-TL', 'VBD-HL', 'TO-HL', 'MD-HL', 'RBT', 'BER*', 'JJR-HL', 'RP-HL',
'JJR-TL', 'PPS+HVZ', 'BEZ-HL', 'BEDZ*', 'NPS-HL', 'NN-NC', 'PP$$', 'FW-JJ',
'FW-AT', 'NR-HL', 'WPS+BEZ', 'EX+BEZ', 'JJT-HL', 'DTI-HL', 'NNS$-HL', 'CD$',
'FW-NNS', 'NN$-HL', 'FW-IN+NN', 'JJS-TL', 'HVD*', 'WQL', 'AP$', 'JJ-NC',
'VBN-TL-HL', 'HVD-HL', 'FW-PP$-NC', 'MD-TL', 'FW-IN+NN-TL', 'BER-TL',
'NP-TL-HL', 'AP-TL', 'FW-DT', 'FW-WDT', 'FW-VB-NC', 'FW-CC', 'CS-HL',
'FW-CD', 'ABN-HL', 'BED*', 'PPSS+HVD', 'NNS-TL-HL', 'PPSS-HL', 'BE-HL',
'TO-TL', 'NR$-TL', 'DT$', 'MD+HV', 'DT-HL', 'UH-TL', 'MD*-HL', 'JJR-NC',
'BER-HL', 'PP$-TL', 'WDT+BEZ', 'NPS$-TL', 'OD-HL', 'QL-TL', 'PPS+BEZ-HL',
'DO-HL', 'PN+HVZ', 'HVZ*', 'FW-*', 'NP+BEZ', 'FW-VB', 'PN-HL', 'BEDZ-HL',
'VBD-TL', 'PN$', 'VB+PPO', 'RB$', '*-HL', 'FW-AT-HL', 'RB+BEZ', 'FW-IN-TL',
'FW-IN+AT-TL', 'N']
書上的結果是
>>> [t for t, c in sorted(counts.items(), key=itemgetter(1), reverse=True)]
['N', 'P', 'DET', 'NP', 'V', 'ADJ', ',', '.', 'CNJ', 'PRO', 'ADV', 'VD', ...]
程式的下法差在哪裡...
數據為什麼可以不用都跑出來??
連幾題的問題都是如此
麻煩高手詳解
謝謝~
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.135.254.66
→
11/17 17:59, , 1F
11/17 17:59, 1F
→
11/28 13:41, , 2F
11/28 13:41, 2F
→
11/28 16:25, , 3F
11/28 16:25, 3F
Python 近期熱門文章
PTT數位生活區 即時熱門文章