Hallo, ich habe gerade angefangen, Python zu lernen, aber ich stecke gerade irgendwie fest.
Ich habe eine hash.txt
Datei mit Tausenden von Malware-Hashes in MD5, Sha1 und Sha5, die in jeder Zeile durch Trennzeichen getrennt sind. Unten sind 2 Beispielzeilen aufgeführt, die ich aus der TXT-Datei extrahiert habe.
416d76b8811b0ddae2fdad8f4721ddbe | d4f656ee006e248f2f3a8a93a8aec5868788b927 | 12a5f648928f8e0b5376d2cc07de8e4cbf9f7ccbadb97d898373f85f0a75c47f 56a99a4205a4d6cab2dcae414a5670fd | 612aeeeaa8aa432a7b96202847169ecae56b07ee | d17de7ca4c8f24ff49314f0f342dbe9243b10e9f3558c6193e2fd6bccb1be6d2
Meine Absicht ist es, die ersten 32 Zeichen (MD5-Hash) anzuzeigen, damit die Ausgabe ungefähr so aussieht:
416d76b8811b0ddae2fdad8f4721ddbe 56a99a4205a4d6cab2dcae414a5670fd
Irgendwelche Ideen?
quelle
the_string[:32]
.split()
und.strip()
Methoden von Strings interessieren . Zum Beispielmd5, sha1, sha5 = line.strip().split("|")
macht so ziemlich das, was Sie vermuten würden.Antworten:
Sie können eine
string
sehr einfach in Scheiben schneiden , genau wie Sie Gegenstände aus einerlist
:So erhalten Sie die ersten 4 Buchstaben:
Oder die letzten 5:
Wenden Sie diese Logik also auf Ihr Problem an:
quelle
the_string.split('|', 1)[0]
.Da es ein Trennzeichen gibt, sollten Sie dieses verwenden, anstatt sich Gedanken darüber zu machen, wie lang der MD5 ist.
Alternative
quelle
Wenn Sie die ersten 2 Buchstaben und die letzten 2 Buchstaben einer Zeichenfolge möchten, können Sie den folgenden Code verwenden:
name = "India" name[0:2]="In" names[-2:]="ia"
quelle