Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Mengapakah `.join()` memasukkan pemisah apabila menggabungkan rentetan?

Mengapakah `.join()` memasukkan pemisah apabila menggabungkan rentetan?

Patricia Arquette
Patricia Arquetteasal
2024-11-09 14:05:03241semak imbas

Why does `.join()` insert separators when concatenating strings?

Memahami Kaedah Python .join()

Kaedah .join() Python ialah alat yang berkuasa untuk penggabungan rentetan, selalunya diutamakan berbanding alternatif suka dan str.format.

Soalan: Mengapa .join() berkelakuan di luar jangkaan apabila menggabungkan rentetan?

Jawapan: The .join( ) kaedah mengambil senarai rentetan dan memasukkan rentetan pemisah yang disediakan antara setiap elemen. Contohnya:

",".join(["a", "b", "c"]) == "a,b,c"

Dalam contoh yang diberikan:

strid = repr(595)
array.array('c', random.sample(string.ascii_letters, 20 - len(strid)))
.tostring().join(strid)

Rentetan "595" ditukar kepada senarai aksara: ["5", "9", "5 "]. Kemudian, rentetan pemisah dimasukkan antara setiap aksara, menghasilkan output:

5wlfgALGbXOahekxSs9wlfgALGbXOahekxSs5

Penyelesaian: Untuk menggabungkan rentetan tanpa memasukkan pemisah, gunakan sebaliknya:

print array.array('c', random.sample(string.ascii_letters, 20 - len(strid)))
.tostring() + strid

Atas ialah kandungan terperinci Mengapakah `.join()` memasukkan pemisah apabila menggabungkan rentetan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn