回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p>到目前为止,我有以下代码(来自cs50/pset6/DNA):</p>
<pre><code>import csv
data_dict = {}
with open(argv[1]) as data_file:
reader = csv.DictReader(data_file)
for record in reader:
# `record` is a dictionary of column-name & value
name = record["name"]
data = {
"AGATC": record["AGATC"],
"AATG": record["AATG"],
"TATC": record["TATC"],
}
data_dict[name] = data
print(data_dict)
</code></pre>
<p><strong>输出</strong></p>
<pre><code>{'Alice': {'AATG': '8', 'AGATC': '2', 'TATC': '3'},
'Bob': {'AATG': '1', 'AGATC': '4', 'TATC': '5'},
'Charlie': {'AATG': '2', 'AGATC': '3', 'TATC': '5'}}
</code></pre>
<p>以下是csv文件:</p>
<pre><code>name,AGATC,AATG,TATC
Alice,2,8,3
Bob,4,1,5
Charlie,3,2,5
</code></pre>
<p>但我的目标是实现完全相同的目标,但不是硬编码键<code>AATG</code>等,也因为我将使用包含更多值的更大数据库,我希望能够循环数据,而不是这样做:</p>
<pre><code>data = {
"AGATC": record["AGATC"],
"AATG": record["AATG"],
"TATC": record["TATC"],
}
</code></pre>
<p>你能帮帮我吗?谢谢</p>