Hướng dẫn concatenate list of strings python - nối danh sách các chuỗi python

Sử dụng

>>> my_lst = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
>>> my_lst_str = ''.join(map(str, my_lst))
>>> print(my_lst_str)

3:

>>> words = ['this', 'is', 'a', 'sentence']
>>> '-'.join(words)
'this-is-a-sentence'
>>> ' '.join(words)
'this is a sentence'

Hướng dẫn concatenate list of strings python - nối danh sách các chuỗi python

Mateen Ulhaq

22.7K16 Huy hiệu vàng88 Huy hiệu bạc128 Huy hiệu đồng16 gold badges88 silver badges128 bronze badges

Đã trả lời ngày 17 tháng 9 năm 2012 lúc 5:33Sep 17, 2012 at 5:33

Burhan Khalidburhan KhalidBurhan Khalid

165K18 Huy hiệu vàng238 Huy hiệu bạc276 Huy hiệu Đồng18 gold badges238 silver badges276 bronze badges

11

Một cách chung chung hơn (bao gồm danh sách các số) để chuyển đổi danh sách thành một chuỗi sẽ là:

>>> my_lst = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
>>> my_lst_str = ''.join(map(str, my_lst))
>>> print(my_lst_str)

Mirekphd

3,4701 Huy hiệu vàng28 Huy hiệu bạc48 Huy hiệu đồng1 gold badge28 silver badges48 bronze badges

Đã trả lời ngày 1 tháng 12 năm 2015 lúc 3:11Dec 1, 2015 at 3:11

Aaron Saaron sAaron S

4.6534 Huy hiệu vàng28 Huy hiệu bạc29 Huy hiệu đồng4 gold badges28 silver badges29 bronze badges

4

Nó rất hữu ích cho người mới bắt đầu biết tại sao tham gia là một phương thức chuỗi.

Nó rất lạ lúc đầu, nhưng rất hữu ích sau này.

Kết quả của tham gia luôn luôn là một chuỗi, nhưng đối tượng được tham gia có thể thuộc nhiều loại (máy phát điện, danh sách, bộ dữ liệu, v.v.).

>>> my_lst = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
>>> my_lst_str = ''.join(map(str, my_lst))
>>> print(my_lst_str)

4 nhanh hơn vì nó chỉ phân bổ bộ nhớ một lần. Tốt hơn so với cách ghép cổ điển (xem, giải thích mở rộng).

Một khi bạn học nó, nó rất thoải mái và bạn có thể thực hiện các thủ thuật như thế này để thêm dấu ngoặc đơn.

>>> ",".join("12345").join(("(",")"))
Out:
'(1,2,3,4,5)'

>>> list = ["(",")"]
>>> ",".join("12345").join(list)
Out:
'(1,2,3,4,5)'

Heilala

6847 Huy hiệu bạc17 Huy hiệu đồng7 silver badges17 bronze badges

Đã trả lời ngày 14 tháng 5 năm 2016 lúc 13:55May 14, 2016 at 13:55

WallebotwallebotWallebot

6875 Huy hiệu bạc8 Huy hiệu Đồng5 silver badges8 bronze badges

4

Chỉnh sửa từ tương lai: Vui lòng không sử dụng câu trả lời dưới đây. Chức năng này đã được loại bỏ trong Python 3 và Python 2 đã chết. Ngay cả khi bạn vẫn đang sử dụng Python 2, bạn nên viết mã sẵn sàng Python 3 để làm cho việc nâng cấp không thể tránh khỏi dễ dàng hơn.: Please don't use the answer below. This function was removed in Python 3 and Python 2 is dead. Even if you are still using Python 2 you should write Python 3 ready code to make the inevitable upgrade easier.


Mặc dù câu trả lời của @burhan Khalid là tốt, tôi nghĩ rằng nó dễ hiểu hơn như thế này:

from str import join

sentence = ['this','is','a','sentence']

join(sentence, "-") 

Đối số thứ hai để tham gia () là tùy chọn và mặc định là "".

Anupam

14.3K18 Huy hiệu vàng64 Huy hiệu bạc92 Huy hiệu Đồng18 gold badges64 silver badges92 bronze badges

Đã trả lời ngày 2 tháng 11 năm 2015 lúc 1:51Nov 2, 2015 at 1:51

SilentVoidSilentVoidSilentVoid

4925 Huy hiệu bạc10 Huy hiệu đồng5 silver badges10 bronze badges

5

list_abc = ['aaa', 'bbb', 'ccc']

string = ''.join(list_abc)
print(string)
>>> aaabbbccc

string = ','.join(list_abc)
print(string)
>>> aaa,bbb,ccc

string = '-'.join(list_abc)
print(string)
>>> aaa-bbb-ccc

string = '\n'.join(list_abc)
print(string)
>>> aaa
>>> bbb
>>> ccc

Đã trả lời ngày 3 tháng 9 năm 2020 lúc 9:18Sep 3, 2020 at 9:18

Hướng dẫn concatenate list of strings python - nối danh sách các chuỗi python

Chúng ta cũng có thể sử dụng chức năng

>>> my_lst = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
>>> my_lst_str = ''.join(map(str, my_lst))
>>> print(my_lst_str)

5 của Python:

from functools import reduce

sentence = ['this','is','a','sentence']
out_str = str(reduce(lambda x,y: x+"-"+y, sentence))
print(out_str)

người đàn ông thiếc

157K41 Huy hiệu vàng210 Huy hiệu bạc298 Huy hiệu Đồng41 gold badges210 silver badges298 bronze badges

Đã trả lời ngày 29 tháng 11 năm 2018 lúc 11:15Nov 29, 2018 at 11:15

Hướng dẫn concatenate list of strings python - nối danh sách các chuỗi python

1

Chúng ta có thể chỉ định cách chúng ta tham gia chuỗi. Thay vì

>>> my_lst = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
>>> my_lst_str = ''.join(map(str, my_lst))
>>> print(my_lst_str)

6, chúng ta có thể sử dụng
>>> my_lst = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
>>> my_lst_str = ''.join(map(str, my_lst))
>>> print(my_lst_str)

7:

sentence = ['this','is','a','sentence']
s=(" ".join(sentence))
print(s)

người đàn ông thiếc

157K41 Huy hiệu vàng210 Huy hiệu bạc298 Huy hiệu Đồng41 gold badges210 silver badges298 bronze badges

Đã trả lời ngày 29 tháng 11 năm 2018 lúc 11:15Oct 18, 2019 at 7:46

Hướng dẫn concatenate list of strings python - nối danh sách các chuỗi python

Chúng ta có thể chỉ định cách chúng ta tham gia chuỗi. Thay vì

>>> my_lst = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
>>> my_lst_str = ''.join(map(str, my_lst))
>>> print(my_lst_str)

6, chúng ta có thể sử dụng
>>> my_lst = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
>>> my_lst_str = ''.join(map(str, my_lst))
>>> print(my_lst_str)

7:Abhishek V

Đã trả lời ngày 18 tháng 10 năm 2019 lúc 7:461 silver badge7 bronze badges

Abhishek Vabhishek v

1011 Huy hiệu bạc7 Huy hiệu đồng

>>> aa
[None, 10, 'hello']

Nếu bạn có một danh sách nội dung hỗn hợp và muốn xâu chuỗi nó, thì đây là một cách:

>>> st = ', '.join(map(str, map(lambda x: f'"{x}"' if isinstance(x, str) else x, aa)))
>>> st = '[' + st + ']'
>>> st
'[None, 10, "hello"]'

Xem xét danh sách này:

Chuyển đổi nó thành chuỗi:

người đàn ông thiếc

157K41 Huy hiệu vàng210 Huy hiệu bạc298 Huy hiệu Đồng41 gold badges210 silver badges298 bronze badges

Đã trả lời ngày 29 tháng 11 năm 2018 lúc 11:15Jan 27, 2021 at 10:21

1

Chúng ta có thể chỉ định cách chúng ta tham gia chuỗi. Thay vì

>>> my_lst = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
>>> my_lst_str = ''.join(map(str, my_lst))
>>> print(my_lst_str)

6, chúng ta có thể sử dụng
>>> my_lst = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
>>> my_lst_str = ''.join(map(str, my_lst))
>>> print(my_lst_str)

7:

>>> my_lst = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
>>> my_lst_str = ''.join(map(str, my_lst))
>>> print(my_lst_str)

0

Đã trả lời ngày 18 tháng 10 năm 2019 lúc 7:46

Abhishek Vabhishek v16 gold badges39 silver badges57 bronze badges

1011 Huy hiệu bạc7 Huy hiệu đồngJun 30, 2020 at 15:20

Hướng dẫn concatenate list of strings python - nối danh sách các chuỗi python

Nếu bạn có một danh sách nội dung hỗn hợp và muốn xâu chuỗi nó, thì đây là một cách:Carmoreno

Xem xét danh sách này:17 silver badges28 bronze badges

>>> my_lst = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
>>> my_lst_str = ''.join(map(str, my_lst))
>>> print(my_lst_str)

1

Chuyển đổi nó thành chuỗi:

Nếu được yêu cầu, hãy chuyển đổi trở lại danh sách:27 gold badges81 silver badges89 bronze badges

>>> ast.literal_eval(st)
[None, 10, 'hello']
May 7, 2020 at 21:18

1

Đã trả lời ngày 27 tháng 1 năm 2021 lúc 10:21

>>> my_lst = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
>>> my_lst_str = ''.join(map(str, my_lst))
>>> print(my_lst_str)

2

Nếu bạn muốn tạo một chuỗi các chuỗi được phân tách bằng dấu phẩy trong kết quả cuối cùng, bạn có thể sử dụng một cái gì đó như thế này:

TomerikooJul 7, 2020 at 11:03

Hướng dẫn concatenate list of strings python - nối danh sách các chuỗi python

Bạn có thể nối các chuỗi vào một danh sách không?

Một cách khác để thực hiện hoạt động chuỗi nối là bằng cách tạo một danh sách và nối các chuỗi vào danh sách.Sau đó, sử dụng hàm nối chuỗi () để hợp nhất chúng lại với nhau để lấy chuỗi kết quả.creating a list and appending strings to the list. Then use string join() function to merge them together to get the result string.

Làm thế nào chúng ta có thể nối các chuỗi trong Python?

Concatenation chuỗi có thể được thực hiện bằng nhiều cách ...
Sử dụng + toán tử ..
Sử dụng phương thức tham gia () ..
Sử dụng nhà điều hành % ..
Sử dụng hàm định dạng () ..
Sử dụng, (dấu phẩy).