سؤال

dict(16) 
    ['zone'] => str(3) "S/Z"
    ['name'] => str(20) "John user"
    ['country'] => str(3) "AGO"
    ['date1'] => str(10) "2012-04-23"
    ['date2'] => str(10) "1970-06-24"
    ....

 def save(self):
         insert_client = db.insert('clients', zone = dict.get('zone'), ...)   

الطريقة الوحيدة التي أعرفها هي ، مع إدراج أساسي ، ثم تكرار القاموس لإجراء تحديثات n للعناصر n في dict.

for key, val in dictionary.iteritems():
    update_client = db.update('clients', key = val)   

أي فكرة لجعل الإدراج أكثر لطيفة للعمل؟ أم يجب أن أستخدم الإدراج الأساسي ثم أكمل ملف تعريف العميل مع التحديثات؟

ملاحظة: مفاتيح قول بيثون هي اسم عمود قاعدة البيانات ،

هل كانت مفيدة؟

المحلول

ماذا عن استخدام ** (تفريغ الوسيطة الكلمة الرئيسية)؟

insert_client = db.insert('clients', **dict)

راجع للشغل ، لا تستخدم dict كاسم متغير. انها الظلال بنيت وظيفة dict:

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top