Armazenamento local

Autora:FawkesPan, Data: 22 de abril de 2020 18:10:56
Tags:FerramentaPython

O quê?

FMZ local de armazenamento de chamadas simplificador Para o armazenamento local, visiteDocumentação da API FMZ

Qual é a utilidade?

Simplificou a forma de chamar o armazenamento local do FMZ, mais elegante e sem necessidade de repetir._G()Não.

Como usar

Importação de modelos

Primeiro, copie este modelo para a sua biblioteca de políticas e selecione-o na política que você vai usar para esta ferramenta.

Em código estratégico

Crie um objeto no início da política com o código seguinte:

PS = ext.PersistentStorage()

A sério. Este objetoPSO Python pode ser usado como um dicionário Python normal, masArmazena apenas conteúdo que pode ser ordenado em JSON

Sobre este livro

Do What the Fuck You Want to Public License com o WTFPL


#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# encoding: utf-8
#
#  Persistent Storage for FMZ
#
# Copyright 2020 FawkesPan
# Contact : i@fawkex.me / Telegram@FawkesPan
#
#            DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE 
#                    Version 2, December 2004 
#
# Copyright (C) 2004 Sam Hocevar <sam@hocevar.net> 
#
# Everyone is permitted to copy and distribute verbatim or modified 
# copies of this license document, and changing it is allowed as long 
# as the name is changed. 
#
#            DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE 
#   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 
#
#  0. You just DO WHAT THE FUCK YOU WANT TO.
#

class PersistentStorage:
    
    def __init__(self):
        keys = _G('__keys__')
        if isinstance(keys, list):
            self.__keys__ = keys
        else:
            self.__keys__ = []
            self.__setitem__('__keys__', self.__keys__)
        return
    
    def _add_key(self, key):
        if key == '__keys__':
            return
        self.__keys__.append(key)
        self.__setitem__('__keys__', self.__keys__)
        return
        
    def _del_key(self, key):
        if key == '__keys__':
            return
        if key in self.__keys__:
            del self.__keys__[self.__keys__.index(key)]
        self.__setitem__('__keys__', self.__keys__)
        return
    
    def __setitem__(self, key, value):
        _G(key, value)
        self._add_key(key)
        return
    
    def __delitem__(self, key):
        _G(key, None)
        self._del_key(key)
        return
    
    def __getitem__(self, key):
        return _G(key)

    def keys(self):
        return self.__keys__
        

ext.PersistentStorage = PersistentStorage

Relacionados

Mais.

Nuvens levesIsso é melhor se for JS.

congcong009DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE (Faça o que você quiser com licença pública) A violência é uma coisa que ele adora.