1

質問する前に、私が Python を初めて使用することをお知らせしたいと思います。:)

とにかくここに私の質問があります:

APIを呼び出して最新のビットコイン ノンス データを取得するちょっとしたコードを書いています。過去数回の nonce 値をコード自体に保存できるようにしたいと考えています。

誰かがリストを使ってこれを行うことを提案しました。私はこれを行いましたが、新しい nonce 値が出てくるたびに、新しい値を追加するのではなく、リスト内の元の値を置き換えるだけです。

私が間違っていること、またはより良い代替手段があるかどうかについて、誰かが考えを持っていますか?

どうもありがとう!:D

from __future__ import print_function
import blocktrail, time

def code():

    client = blocktrail.APIClient(api_key="x", api_secret="x", network="BTC", testnet=False)
    address = client.address('x')

    latest_block = client.block_latest()

    nonce = latest_block['nonce']

    blockhash = latest_block['hash']

    print(nonce)

    noncestr = str(nonce)

    noncelist = []
    noncelist.append(noncestr);
    print(noncelist)
    time.sleep(60)

while True:
    code()
4

2 に答える 2

2

リストを空にしてから、期待するものを追加しています:

noncelist = []
noncelist.append(noncestr);

次のようになります。

noncelist=[]
while True:
    code(noncelist)

変更されたコード:

from __future__ import print_function
import blocktrail, time

def code(noncelist):

    client = blocktrail.APIClient(api_key="x", api_secret="x", network="BTC", testnet=False)
    address = client.address('x')

    latest_block = client.block_latest()

    nonce = latest_block['nonce']

    blockhash = latest_block['hash']

    print(nonce)

    noncestr = str(nonce)

    noncelist.append(noncestr);
    print(noncelist)
    time.sleep(60)
noncelist=[]
while True:
    code()

より適切な方法は次のとおりです。

from __future__ import print_function
import blocktrail, time

def code():

    client = blocktrail.APIClient(api_key="x", api_secret="x", network="BTC", testnet=False)
    address = client.address('x')

    latest_block = client.block_latest()

    nonce = latest_block['nonce']

    blockhash = latest_block['hash']

    print(nonce)

    noncestr = str(nonce)
    time.sleep(60)
    return noncestr 
noncelist=[]
while True:
    noncelist.append(code())
    print noncelist
于 2015-07-16T12:02:49.437 に答える