1. ホーム
  2. python

[解決済み] Pythonで文字列の最初の数文字を表示するには?

2023-02-09 08:32:28

質問

こんにちは、私はPythonを学び始めたばかりですが、今、ちょっと行き詰まっています。

私は持っています hash.txt ファイルには、数千のマルウェアのハッシュが MD5、Sha1、Sha5 でそれぞれ行の区切り文字で区切られています。以下は、私が .txt ファイルから抽出した 2 行の例です。

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

私の意図は、最初の32文字(MD5ハッシュ)を表示することなので、出力は次のようになります。

416d76b8811b0ddae2fdad8f4721ddbe 56a99a4205a4d6cab2dcae414a5670fd

何かアイデアはありますか?

どのように解決するのですか?

を「スライス」することができます。 string から項目を取り出すのと同じように、非常に簡単にできます。 list :

a_string = 'This is a string'

最初の4文字を取得するために

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

もしくは最後の5つ。

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

そのロジックをあなたの問題に当てはめてみると

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