it-swarm.com.de

Wie werden die ersten Zeichen einer Zeichenfolge in Python angezeigt?

Hallo, ich habe gerade angefangen, Python zu lernen, aber ich bin jetzt irgendwie festgefahren. 

Ich habe eine hash.txt-Datei mit Tausenden von Malware-Hashes in MD5, Sha1 und Sha5, die in jeder Zeile durch Trennzeichen getrennt sind. Nachfolgend finden Sie 2 Beispielzeilen, die ich aus der TXT-Datei extrahiert habe.

416d76b8811b0ddae2fdad8f4721ddbe | d4f656ee006e248f2f3a8a93a8aec5868788b927 | 12a5f648928f8e0b5376d2cc07de8e4cbf9f7ccbadb97d898373f85f0a75c47f 56a99a4205a4d6cab2dcae414a5670fd | 612aeeeaa8aa432a7b96202847169ecae56b07ee | d17de7ca4c8f24ff49314f0f342dbe9243b10e9f3558c6193e2fd6bccb1be6d2

Ich beabsichtige, die ersten 32 Zeichen (MD5-Hash) anzuzeigen, damit die Ausgabe etwa wie folgt aussieht:

416d76b8811b0ddae2fdad8f4721ddbe 56a99a4205a4d6cab2dcae414a5670fd

Irgendwelche Ideen?

67
Rising Lee

Sie können eine string sehr einfach "schneiden", genauso wie Sie Elemente aus einer list ziehen:

a_string = 'This is a string'

Um die ersten 4 Buchstaben zu erhalten:

first_four_letters = a_string[:4]
>>> 'This'

Oder die letzten 5:

last_five_letters = a_string[-5:]
>>> 'string'

Wenden Sie diese Logik also auf Ihr Problem an:

the_string = '416d76b8811b0ddae2fdad8f4721ddbe|d4f656ee006e248f2f3a8a93a8aec5868788b927|12a5f648928f8e0b5376d2cc07de8e4cbf9f7ccbadb97d898373f85f0a75c47f '
first_32_chars = the_string[:32]
>>> 416d76b8811b0ddae2fdad8f4721ddbe
148
TankorSmash

Da es ein Trennzeichen gibt, sollten Sie das verwenden, anstatt sich darum zu kümmern, wie lang der MD5 ist.

>>> s = "416d76b8811b0ddae2fdad8f4721ddbe|d4f656ee006e248f2f3a8a93a8aec5868788b927|12a5f648928f8e0b5376d2cc07de8e4cbf9f7ccbadb97d898373f85f0a75c47f"
>>> md5sum, delim, rest = s.partition('|')
>>> md5sum
'416d76b8811b0ddae2fdad8f4721ddbe'

Alternative

>>> md5sum, sha1sum, sha5sum = s.split('|')
>>> md5sum
'416d76b8811b0ddae2fdad8f4721ddbe'
>>> sha1sum
'd4f656ee006e248f2f3a8a93a8aec5868788b927'
>>> sha5sum
'12a5f648928f8e0b5376d2cc07de8e4cbf9f7ccbadb97d898373f85f0a75c47f'
12
John La Rooy

Wenn Sie die ersten 2 Buchstaben und die letzten 2 Buchstaben einer Zeichenfolge wünschen, können Sie den folgenden Code verwenden: name = "India" name[0:2]="In" names[-2:]="ia"

0
Darshan Jain