Инструмент / Сервис для Ethereum Smart Contract Analytics

Как объяснили другие, встроенный dict не делает то, что вы хотите. Но в Python2 (и, вероятно, 3 тоже) вы можете легко создать класс ValueDict, который копирует с помощью =, чтобы вы могли быть уверены, что оригинал не изменится.

class ValueDict(dict):

    def __ilshift__(self, args):
        result = ValueDict(self)
        if isinstance(args, dict):
            dict.update(result, args)
        else:
            dict.__setitem__(result, *args)
        return result # Pythonic LVALUE modification

    def __irshift__(self, args):
        result = ValueDict(self)
        dict.__delitem__(result, args)
        return result # Pythonic LVALUE modification

    def __setitem__(self, k, v):
        raise AttributeError, \
            "Use \"value_dict<<='%s', ...\" instead of \"d[%s] = ...\"" % (k,k)

    def __delitem__(self, k):
        raise AttributeError, \
            "Use \"value_dict>>='%s'\" instead of \"del d[%s]" % (k,k)

    def update(self, d2):
        raise AttributeError, \
            "Use \"value_dict<<=dict2\" instead of \"value_dict.update(dict2)\""


# test
d = ValueDict()

d <<='apples', 5
d <<='pears', 8
print "d =", d

e = d
e <<='bananas', 1
print "e =", e
print "d =", d

d >>='pears'
print "d =", d
d <<={'blueberries': 2, 'watermelons': 315}
print "d =", d
print "e =", e
print "e['bananas'] =", e['bananas']


# result
d = {'apples': 5, 'pears': 8}
e = {'apples': 5, 'pears': 8, 'bananas': 1}
d = {'apples': 5, 'pears': 8}
d = {'apples': 5}
d = {'watermelons': 315, 'blueberries': 2, 'apples': 5}
e = {'apples': 5, 'pears': 8, 'bananas': 1}
e['bananas'] = 1

# e[0]=3
# would give:
# AttributeError: Use "value_dict<<='0', ..." instead of "d[0] = ..."

Пожалуйста, обратитесь к шаблон изменения lvalue, обсуждаемый здесь: Python 2.7 - чистый синтаксис для модификации lvalue . Главное наблюдение заключается в том, что str и int ведут себя как значения в Python (даже если они фактически являются неизменяемыми объектами под капотом). В то время как вы это замечаете, также обратите внимание, что ничего особенного в str или int нет. dict можно использовать почти одинаково, и я могу думать о многих случаях, когда ValueDict имеет смысл.

2
задан Abliamit 5 March 2019 в 15:41
поделиться

3 ответа

Я думаю, это то, что вы ищете: https://www.stateofthedapps.com

DApp является аббревиатурой для децентрализованного приложения, которое включает в себя внешний интерфейс и интеллектуальный контракт в качестве бэкэнда.

На сайте перечислены наиболее часто используемые DApp-приложения на различных платформах. Он предоставляет такие графики, как пользователь, транзакция и активность в процессе разработки. Он также ссылается на соответствующие транзакции в блокчейне и указывает детали, такие как создатели и лицензия на программное обеспечение, если таковые имеются.

0
ответ дан Sigmatics 5 March 2019 в 15:41
поделиться

Существуют различные способы получить представление о вашей умной контрактной деятельности.

Вы можете проверить https://etherscan.io/ и найти список транзакций. Это может быть очень полезно, если вам нужно просматривать отдельные транзакции. Etherscan показывает ряд транзакций и другую полезную информацию.

Если вам не хватает Etherscan, есть другие приложения. Вы можете проверить https://scout.cool/ и https://analyther.com . Analyther работает с любым умным контрактом и предоставляет вам подробные графики транзакций, событий, активных пользователей и т. Д. Он создает отчеты, подобные этим: USDC transactions report

0
ответ дан dimicountzero 5 March 2019 в 15:41
поделиться

Amberdata.io предоставляет интеллектуальные метрики контрактов и amp; аналитика. Они также создают агрегированные данные из необработанных данных блокчейна. Таким образом, они предоставляют все ранее упомянутое и многое другое!

  • Мониторинг событий реального контракта: Live contract event monitoring

    • Исторические события контракта график
    • Принятие и amp; Использование: enter image description here Например, [Cryptokitties] ( https://amberdata.io/addresses/0x06012c8cf97bead5deae237070f9587f8e7a266d/metrics ). Похоже, что за последние 24 часа количество входящих транзакций в этот контракт значительно увеличилось.

    • Подробные списки транзакций с контрактом

    • График, показывающий транзакции с контрактом (светло-голубые точки - это EOA, а темно-синий квадрат - умные контракты). enter image description here

Это довольно аккуратно! Меня больше всего волнует API . Там так много данных для изучения.

0
ответ дан foba 5 March 2019 в 15:41
поделиться
Другие вопросы по тегам:

Похожие вопросы: