回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p>如果2个变量是唯一的,则代码必须对它们进行计数。<br/>
但我不能让它工作。<br/>
有人知道我怎样才能让它工作吗?你知道吗</p>
<p>我希望输出为:</p>
<pre><code>C603 100nF 8
</code></pre>
<p>下面是.txt文件的一个简单示例。<br/>
踢脚板1.2版_组件列表.txt你知道吗</p>
<pre><code>C1 1nF C0603 rcl (24.7 35.9) R270
C2 100nF C0603 rcl (36.7 32.7) R180
C3 10uF_Tantalum C0603 rcl (22.7 6.45) R0
C4 22uF C0603 rcl (25 8.25) R90
C5 1uF C0603 rcl (22.6 21.85) R180
</code></pre>
<p>代码:</p>
<pre><code>from operator import itemgetter
from collections import Counter
elements = []
elements.append([])
elements.append([])
elements.append([])
with open('C:\\Python\\Artinis\\BaseBoard_V1.2_Componentslist.txt') as f:
for i in xrange(10):
f.next()
for line in f:
list = line.split();
elements[0].append(list[0])
elements[1].append(list[1])
elements[2].append(list[2])
for value, package in sorted(zip(elements[1], elements[2])):
input = value, package
c = Counter( input )
print ( c.items() )
</code></pre>
<p>输出:</p>
<pre><code>[('0.22uF', 1), ('C0603', 1)]
[('100', 1), ('R0603', 1)]
[('100', 1), ('R0603', 1)]
[('100', 1), ('R0603', 1)]
[('100', 1), ('R0603', 1)]
[('C0603', 1), ('100nF', 1)]
[('C0603', 1), ('100nF', 1)]
[('C0603', 1), ('100nF', 1)]
[('C0603', 1), ('100nF', 1)]
[('C0603', 1), ('100nF', 1)]
[('C0603', 1), ('100nF', 1)]
[('C0603', 1), ('100nF', 1)]
[('C0603', 1), ('100nF', 1)]
[('10K', 1), ('R0603', 1)]
[('10K', 1), ('R0603', 1)]
[('10k', 1), ('R0603', 1)]
[('10uF_Tantalum', 1), ('C0603', 1)]
[('R0603', 1), ('19.6K', 1)]
[('1nF', 1), ('C0603', 1)]
[('C0603', 1), ('1uF', 1)]
[('2.2uF', 1), ('C0603', 1)]
[('2.2uF', 1), ('C0603', 1)]
[('R0603', 1), ('22K', 1)]
[('R0603', 1), ('22K', 1)]
[('22uF', 1), ('C0603', 1)]
[('R0603', 1), ('483', 1)]
[('53047-05', 2)]
[('ATMEGA32L-8MU', 1), ('QFN50P700X700X100-45N', 1)]
</code></pre>
<p>我试着在谷歌上搜索,我试过其他代码,但对我不起作用。
有人知道怎么解决这个问题吗?你知道吗</p>