Path: csiph.com!aioe.org!.POSTED!not-for-mail From: MB339A Newsgroups: it.comp.lang.python Subject: Copiare file "a pezzi" Date: Mon, 21 Mar 2016 21:46:24 +0100 Organization: Aioe.org NNTP Server Lines: 39 Message-ID: NNTP-Posting-Host: c5k3xszzMeTO5nXvggWWvQ.user.gioia.aioe.org Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-15; format=flowed Content-Transfer-Encoding: 8bit X-Complaints-To: abuse@aioe.org User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:38.0) Gecko/20100101 Thunderbird/38.5.1 X-Notice: Filtered by postfilter v. 0.8.2 X-Mozilla-News-Host: news://nntp.aioe.org:119 Xref: csiph.com it.comp.lang.python:7625 Buonasera a tutti voi! Sto muovendo i primi passi in python ed ho un dubbio... Intanto vi mostro il codice...poi chiedo aiuto :P #!/usr/bin/python import os blocksize=500000 lenf=os.path.getsize("m2_1958.raw") ncycles=lenf / blocksize rest=lenf % blocksize inf = open('m2_1958.raw', 'rb') outf = open('m2_1958.wav', 'wb') for i in range (1,ncycles): bread = inf.read(blocksize) outf.write(bread) print('*'), inf.close() outf.close() In pratica leggo da un file a blocchi di 500000 e li scrivo in un secondo file (non tengo conto se il file non ha dimensioni multiple di 500000...per adesso va bene così...). Quel che non ho trovato nella documentazione (o magari ho cercato male...) è il sapere se il puntatore dopo ogni read va avanti nel primo e nel secondo file (ad ogni write). In sostanza...il codice fa schifo? cosa correggereste? Insomma...consigli ben accetti! PS: Devo stare basso con la dimensione dei blocchiperchè lavoro nativamente su un sistema embedded con poca ram e non posso swappare su microsd....