回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p><br/>
我正在尝试用Python创建一个CRM,作为课程的最后一个项目<br/>
我创建了一个字典,就像我的CRM中的“数据库”一样使用</p>
<p>首先,我尝试在类外更新dict:</p>
<pre><code>index_db = {}
index_db[len(index_db)] = {'name_first': 'Johnny', 'name_last': 'Quest', 'email': 'jquest@cartoonville.com', 'phone': '1 365 999999999'}
index_db[len(index_db)] = {'name_first': 'Scooby', 'name_last': 'Doo', 'email': 'sdoo@cartoonville.com', 'phone': '1 365 888888888'}
index_db[len(index_db)] = {'name_first': 'Homer', 'name_last': 'Simpson', 'email': 'hsimpson@cartoonville.com', 'phone': '1 365 777777777'}
</code></pre>
<p>这是回报:</p>
<pre><code>{
0: {
'name_first': 'Johnny',
'name_last': 'Quest',
'email': 'jquest@cartoonville.com',
'phone': '1 365 999999999'
},
1: {
'name_first': 'Scooby',
'name_last': 'Doo',
'email': 'sdoo@cartoonville.com',
'phone': '1 365 888888888'
},
2: {
'name_first': 'Homer',
'name_last': 'Simpson',
'email': 'hsimpson@cartoonville.com',
'phone': '1 365 777777777'
}
}
</code></pre>
<p>它看起来很棒,所以我创建了一个类:</p>
<pre><code>class Consumer(object):
index_db = {}
args = {'name_first': None, 'name_last': None, 'email': None, 'phone': None}
def __set__(self, var, val):
self.args[var] = val
def __insert__(self):
self.index_db[len(self.index_db)] = self.args
</code></pre>
<p>并插入三个消费者:</p>
<pre><code>consumer = Consumer()
consumer.__set__('name_first', 'Johnny')
consumer.__set__('name_last', 'Bravo')
consumer.__set__('email', 'jbravo@cartoonville.com')
consumer.__set__('phone', '1 353 30316541')
consumer.__insert__()
consumer.__set__('name_first', 'Dexter')
consumer.__set__('name_last', 'Scientist')
consumer.__set__('email', 'dscientist@cartoonville.com')
consumer.__set__('phone', '1 353 33256001')
consumer.__insert__()
consumer.__set__('name_first', 'Barney')
consumer.__set__('name_last', 'Gumble')
consumer.__set__('email', 'bgumble@cartoonville.com')
consumer.__set__('phone', '1 353 555961533')
consumer.__insert__()
</code></pre>
<p>这是回报:</p>
<pre><code>{
0: {
'email': 'bgumble@cartoonville.com',
'name_first': 'Barney',
'name_last': 'Gumble',
'phone': '1 353 555961533'},
1: {
'email': 'bgumble@cartoonville.com',
'name_first': 'Barney',
'name_last': 'Gumble',
'phone': '1 353 555961533'},
2: {
'email': 'bgumble@cartoonville.com',
'name_first': 'Barney',
'name_last': 'Gumble',
'phone': '1 353 555961533'
}
}
</code></pre>
<p>哦,天哪,为什么这不管用</p>