0

一度に 1MB 単位で文字列を読み取り、XMLRPC 経由でアップロードしたいのですが、これが最善の方法でしょうか? 気をつけるべきことはありますか?

while data.read(1048576) != None:
    data.seek(1048576, 1)
    if not rpc_srv.chunk_upload(tf_uuid, data_chunk):
        raise Exception('Failed to upload data.')
4

1 に答える 1

1

iter()関数を番兵と共に使用して、ループを単純化できます。

for data_chunk in iter(lambda: data.read(1048576), ''):
    if not rpc_srv.chunk_upload(tf_uuid, data_chunk):
        raise Exception('Failed to upload data.')

.seek()する必要はありません.read()。呼び出しはすでに位置を更新しています。

于 2012-08-24T09:52:32.670 に答える