Bagaimana cara mengubah daftar menjadi string yang dipisahkan spasi dengan Python?
Misalnya, saya ingin mengubah daftar ini:
my_list = [how,are,you]
Ke dalam string "how are you"
Ruang itu penting. Saya tidak ingin mendapatkan howareyou
apa yang saya miliki dengan upaya saya sejauh ini
"".join(my_list)
list
sebagai nama variabel.Jawaban:
" ".join(my_list)
Anda harus bergabung dengan spasi bukan string kosong ...
sumber
list = ['how ', 'are ', 'you ']
lalu bagaimana mengubahnya menjadi daftar." ".join([i.strip() for i in my_list)
Saya akan melemparkan ini sebagai alternatif hanya untuk sih, meskipun itu cukup banyak tidak berguna jika dibandingkan dengan
" ".join(my_list)
string. Untuk non-string (seperti array int) ini mungkin lebih baik:" ".join(str(item) for item in my_list)
sumber
Untuk Non String
list
kita bisa melakukan seperti ini juga" ".join(map(str, my_list))
sumber
Jadi untuk mencapai keluaran yang diinginkan, pertama-tama kita harus mengetahui cara kerja fungsinya.
Sintaks untuk
join()
metode seperti yang dijelaskan dalam dokumentasi python adalah sebagai berikut:string_name.join(iterable)
Hal-hal yang perlu diperhatikan:
string
gabungan dengan elemeniterable
. Pemisah antara elemen menjadistring_name
.iterable
wasiat akan menaikkan aTypeError
Sekarang, untuk menambahkan spasi , kita hanya perlu mengganti
string_name
dengan a" "
atau a' '
keduanya akan bekerja dan menempatkaniterable
yang ingin kita gabungkan.Jadi, fungsi kita akan terlihat seperti ini:
' '.join(my_list)
Tapi, bagaimana jika kita ingin menambahkan sejumlah
white spaces
di antara elemen kita diiterable
?Kami perlu menambahkan ini:
str(number*" ").join(iterable)
di sini,
number
akan menjadi masukan pengguna.Jadi, misalnya jika
number=4
.Kemudian, keluaran dari
str(4*" ").join(my_list)
akan menjadihow are you
, jadi di antara setiap kata terdapat 4 spasi.sumber
"".join([i for i in my_list])
Ini harus bekerja seperti yang Anda minta!
sumber
Mengapa Anda tidak menambahkan spasi di item dari daftar itu sendiri, seperti:
list = ["how ", "are ", "you "]
sumber
input(a).split(b)
)