wer kann diese python-routine mal umsetzen in basic.

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
EyDu
User
Beiträge: 4881
Registriert: Donnerstag 20. Juli 2006, 23:06
Wohnort: Berlin

funkheld hat geschrieben:Bei der 1. sollte eine "hex" geprintet werden oder? es kommt eine Decimalzahl, macht aber nichts.
Ganz offensichtlich nicht. Vielleicht solltest du den Code schrittweise im interaktiven Interpreter ausprobieren.
funkheld hat geschrieben:Kann man bei Python mit einem Integerwert(4byte) 4 druckbare zeichen mit einem Schwung ausgeben.
Eine einfache Schleife sollte es tun ;-) Das struct-Modul hilft dir vielleicht auch weiter.
Das Leben ist wie ein Tennisball.
BlackJack

@funkheld: Schreib doch bitte nicht einfach nur die Sachen ab, sondern lies nach was sie tun und verstehe sie. Notfalls auch mit ausprobieren der Einzelteile. Versuch mal nachzuvollziehen was ``print int(dein_string.encode('hex'), 16)`` im einzelnen macht und wie die Zahl zustande kommt, die Du da siehst.

Zu der Frage wie man eine ganze Zahl in eine 4-Byte lange Zeichenkette umwandelt verweise ich *noch einmal* auf das `struct`-Modul.
jerch
User
Beiträge: 1669
Registriert: Mittwoch 4. März 2009, 14:19

Das ist nicht gerade motivierend für uns, wenn du jede Kleinigkeit hier nachfragst und so kaum Eigeninitiative, die über das Nachfragen im Forum hinaus geht, zeigst :(

Zu Deinem jetzigen Problem: struct struct struct

oder zu Fuss :twisted:

Code: Alles auswählen

>>> f=lambda x : lambda b, h=hex(x).rstrip('L')[2:].decode('hex') : ('\x00'*(b-len(h))+h)[-b:]
>>> s='abcdefgh'         # 8 Byte breit
>>> z=int(s.encode('hex'),16)
>>> z
7017280452245743464L
>>> f(z)(8)              # Zahlenwert, Bytebreite
'abcdefgh'
SCNR

Edit: bezieht sich auf http://www.python-forum.de/viewtopic.ph ... 97#p183897
Die von mir gepostete Lösung war als Antwort auf Deine "mit einem Schwung"-Anfrage gedacht, mit Augenzwinkern und nicht zum Abschreiben.
Selbst für eine eigene Variante von Dir ohne 'struct' sind hier im Prinzip schon alle nötigen Funktionen genannt wurden, zusammen mit Deinem Wissen um Character(Byte)- und Zahlenrepräsentation ist das doch nur noch ein Schleifenkonstrukt mit Division- und Modulo-Rechnung weit entfernt.
Antworten