2

我正在使用返回的 json 在 python 中创建一个字典。

我想成为shortuuid的值之一,所以我把一个函数作为值。我希望调用该函数并将值替换为该函数返回的值。

这个对吗 ?

        tvMSG = {'fromEMAIL': uEmail, 'toCHANNELID': channelID, 'timeSENT': uTime}
             for msgkey, subdict, instakey in (('profilePIC', 'user', 'profile_picture'),
                         ('userNAME', 'user', 'username'),
                         ('msgBODY', 'caption', 'text'),
                         ('mainCONTENT','images', 'standard_resolution',)
                         ('tvshowID', shortuuid.uuid())):



   this is the key/value in question:
            ('tvshowID', shortuuid.uuid())):

这是我得到的错误:

        TypeError: 'tuple' object is not callable

如果不是,我该如何让它工作?

4

2 回答 2

4

错误来自缺少逗号。该行:

('mainCONTENT','images', 'standard_resolution',)

实际上应该是:

('mainCONTENT','images', 'standard_resolution'),

这就是为什么你得到错误'tuple' object is not callable,你在打电话('any','tuple')('arguments')

于 2013-08-08T23:35:08.127 回答
0

感谢@ThierryJ 的提示。

  tvMSG = {'fromEMAIL': uEmail, 'toCHANNELID': channelID, 'timeSENT': uTime, 'tvshowID: shortuuid.uuid()}
         for msgkey, subdict, instakey in (('profilePIC', 'user', 'profile_picture'),
                     ('userNAME', 'user', 'username'),
                     ('msgBODY', 'caption', 'text'),
                     ('mainCONTENT','images', 'standard_resolution')):

无需进行任何迭代。我只是将该调用从循环中取出并将其放入循环上方的变量中。

于 2013-08-08T23:28:46.697 回答