我有一个查询,它返回我们更大应用程序中特定应用程序的用户安全设置。在
设置表的人将所有的安全设置都放在一个字段中,而不是定义各个字段,因此我得到了一个如下所示的blob:
NNYYNYNN NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNYNNNNY
每一个都对应于单独的设置。 我知道如何使用字符串切片来获取各个字段。在
我想知道的是,如果我返回这个blob,有没有办法让15、25和48个字符?我还可以设置查询来执行substr()
并获得我想要的字符,我只是想知道是否有一种python方法可以做到这一点。我更希望不必设置多个查询,因为变化实际上是无穷无尽的,例如上面的示例是我必须使用的大约20个不同应用程序之一。在
要快速提取,可以执行以下操作:
或者您可以编写一个函数:
^{pr2}$您可以使用namedtuples给您的安全策略命名值。例如,假设您的字符串是三个字符,每个位置的含义是}分别表示yes和no。因此,您可以这样做:
read
,write
,execute
。此外,我假设您的字符串Y
和{会打印出来的
^{pr2}$然后可以通过索引或符号名访问每个设置。例如:
显然,您将用所有48个安全策略的文本描述来调整这个示例。在
https://docs.python.org/2.7/library/collections.html#collections.namedtuple
相关问题 更多 >
编程相关推荐