2012/11/1 Daniele Varrazzo <p...@develer.com>: > On 2012-11-01 09:09, Stefano Dal Pra wrote: >> >> Mah, direi che fa qualcosa tipo questo: > > > Grazie per il top posting, così è facile seguire domande e risposte no?
Si', per alcuni e' piu' facile. > Riordino... > > >> On Thu, Nov 1, 2012 at 9:33 AM, orsomann...@gmail.com >> <orsomann...@gmail.com> wrote: >>> >>> C'e' qualcuno che sa aiutarmi a convertire questo pezzo di codice VB in >>> Python? > > >>> Dim Buffer As String * 327 >>> >>> fileno = FreeFile >>> Open ".\DATAFILE" For Binary As #fileno >>> Get #fileno, , Buffer > > >> f = open('DATAFILE','rb') >> B = f.read(327) > > > >>> VCod = Hex2(Asc(Mid(Buffer, 9, 1))) & Hex2(Asc(Mid(Buffer, 10,1))) & >>> Left(Hex2(Asc(Mid(Buffer, 11, 1))), 1) > > >> Vcod = "%02x%02x%02x"%(B[9], B[10], B[11]) > > > Mi sembra che Mid sia base 1: in questo caso dovrebbe essere: > > Vcod = "%02x%02x%02x"%(ord(B[8]), ord(B[9]), ord(B[10])) Sull'a necessita' di ord() mi sono reso conto appena ho provato il pezzetto di codice, ahime solo dopo aver cliccato "Send". Pero' mi rimangono due dubbi: - sugli esempio di uso stringhe in VB mi sembra che gli indici partano da 0, come in python. - Mi sembra che String sia per default unicode (quindi un carattere --> 2 byte) tranne quando si specifica direttamente la stringa tra "". In questo caso B e' un buffer binario, quindi anziche B[n] si dovrebbe prendere B[2*n : 2*n + 2] ? O in qualche modo "python way" gestire il caso di stringhe unicode? Grazie, ciao. > > >>> VCog = Trim(Mid(Buffer, 31, 30)) >> >> Vcog = B[31:62].strip() > > > Sempre se Mid è base 1, questo sembra più: > > Vcog = B[30:60].strip(' ') > > strip elimina tutti i whitespace, anche tabe crlf, credo Trim() elimini solo > gli spazi. > > > >> Se puoi prova ad allegare un "DATAFILE" ed il risultato che da i >> lcodice originale... > > > > -- > Daniele Varrazzo - Develer S.r.l. > http://www.develer.com > > _______________________________________________ > Python mailing list > Python@lists.python.it > http://lists.python.it/mailman/listinfo/python _______________________________________________ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python