也许这是一个愚蠢/简单的问题,但是我应该如何在python中解释这种类型的数组符号。
self.sessions[(recepientId, deviceId)]
我想把一些Python翻译成PHP。
正如有人说的不清楚,对我来说更不清楚,所以我就把完整的功能放进去。但是我不能做更多,我不太懂python。
def loadSession(self, recepientId, deviceId):
if self.containsSession(recepientId, deviceId):
return SessionRecord(serialized=self.sessions[(recepientId, deviceId)])
else:
return SessionRecord()
sessions变量的定义如下:
self.sessions = {}
(recepientId, deviceId)
是由两个对象组成的元组。self.sessions
是一个字典(即键值哈希映射)。
元组是键,通过执行self.sessions[(recepientId, deviceId)]
从字典中检索其相关值。因此,它只是查找哈希映射(在Python中称为字典)中的特定值。
这段代码只是试图在self中找到SessionRecord。
通过key来创建会话(键值映射),其中key是一对recipientId和deviceId。在c++、Java、c#等语言中,我们更愿意这样写:
class Key {
//constructor
Id recipientId;
Id deviceId;
//getters|setters and stuff
}
Map<Key, SessionRecord> sessions = Store.getSessions();
SessionRecord session = sessions.get(new Key(recipientId, deviceId));