Orjanp Skrevet 14. september 2006 Del Skrevet 14. september 2006 (endret) Har sett litt på struct funksjonen. Eksempel. >>> pack('5s5s', 'Hey', 'you') 'Hey\x00\x00You\x00\x00' >>> t = pack('5s5s', 'Hey', 'You') >>> a, b = unpack('5s5s', t) ('Hey\x00\x00', 'You\x00\x00') Er det mulig å forhindre at paddingen kommer med i resultatet når man benytter strenger? Eller må jeg lage en funskjon som fjerner paddingen? Utgangspunktet er selvsagt at man ikke vet akkurat hvor lang hver streng er. Ørjan... Endret 15. september 2006 av Orjanp Lenke til kommentar
FraXinuS Skrevet 14. september 2006 Del Skrevet 14. september 2006 Du kan vel bare gjøre noe slikt: s1 = "hey" s2 = "you" format = '%ss%ss' % (len(s1), len(s2)) t = struct.pack(format, s1, s2) a, b = struct.unpack(format , t) eller bruk p t = struct.pack(5p5p, "hey", "you") struct.unpack(5p5p , t) ('hey', 'you') Lenke til kommentar
Orjanp Skrevet 15. september 2006 Forfatter Del Skrevet 15. september 2006 Du kan vel bare gjøre noe slikt: s1 = "hey" s2 = "you" format = '%ss%ss' % (len(s1), len(s2)) t = struct.pack(format, s1, s2) a, b = struct.unpack(format , t) Det forutsetter at mottaker av t også får format. Noe som ikke alltid er tilfellet. eller bruk p t = struct.pack(5p5p, "hey", "you") struct.unpack(5p5p , t) ('hey', 'you') 6864387[/snapback] p fungerte utmerket. Takk for hjelpen. Ørjan... Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå