Phương thức str.join(iterable) nối các phần tử của iterable thành một chuỗi, dùng chuỗi gọi phương thức làm phân cách (delimiter).
Ví dụ 1: Nối list với phân cách '->'
list_1 = ['t','u','t','o','r','i','a','l'] s = "->" print(s.join(list_1)) # t->u->t->o->r->i->a->l
Ví dụ 2: Nối không phân cách (chuỗi rỗng)
list_1 = ['t','u','t','o','r','i','a','l'] s = "" print(s.join(list_1)) # tutorial
Ví dụ 3: Nối key của dictionary
dict_1 = {'t':'u', 'o':'r', 'i':'a', 'l':'s'}
dict_2 = {1:'u', 2:'o', 3:'i', 4:'l'}
s = " "
print(s.join(dict_1)) # t o i l (chỉ key)
print(s.join(dict_2)) # TypeError: sequence item 0: expected str, int found
Lưu ý quan trọng
- Tất cả phần tử trong iterable phải là chuỗi (str). Nếu có int/float sẽ ném
TypeError. - Dictionary:
join()duyệt qua key, không phải value. - Để nối value hoặc key-value, hãy chuyển sang list comprehension trước:
print(s.join(str(v) for v in dict_1.values()))
print(s.join(f"{k}:{v}" for k,v in dict_1.items()))
Kết luận
join() là cách chuẩn, hiệu năng cao để nối chuỗi trong Python. Luôn đảm bảo iterable chứa toàn chuỗi.