Hướng dẫn cách chuyển list thành string trong Python. Bạn sẽ học được tất cả cách chuyển list thành string trong Python sau bài học này.
Chúng ta có 3 phương pháp để chuyển list thành string trong Python như sau:
- Phương thức join() : chuyển list chỉ chứa string thành string trong Python
- Phương thức str(): chuyển list chứa số thành string trong Python
- RegEx trong python : chuyển list 2 chiều thành string trong Python
- Sử dụng Hàm map()
Lại nữa, nếu bạn muốn làm ngược lại, hãy xem bài viết: Chuyển string sang list trong Python.
Chuyển list string thành string trong Python
Đối với các list mà phần tử của nó chỉ thuộc kiểu dữ liệu string, chúng ta có thể đơn giản sử dụng phương thức join() trong Python để nối các phần tử của list đó và chuyển list thành string trong Python.
Ví dụ cụ thể:
my_list = ["a", "b", "c"] |
Lưu ý là chúng ta chỉ có thể dùng phương pháp này đối với các list mà phần tử trong nó chỉ thuộc kiểu string mà thôi. Nếu tồn tại phần tử có giá trị khác tring, ví dụ như là kiểu số chẳng hạn, lỗi sẽ TypeError sẽ bị trả về.
my_list = ["a", "b", "c", 1] |
Lỗi trả về:
#Traceback (most recent call last): |
Khi đó chúng ta cần sử dụng tới phương pháp sử dụng phương thức str() mà Kiyoshi sẽ trình bày ở phần sau.
Chuyển list chứa số thành string trong Python
Như Kiyoshi đã trình bày ở trên, thì chúng ta không thể sử dụng join() để chuyển list chứa số thành string trong Python Trong trường hợp này, chúng ta cần phải sử dụng hàm str() trong Python để chuyển số thành string, trước khi có thể đem nối chúng.
Ví dụ cụ thể:
my_list = ["a", "b", "c", 1] |
Tương tự chúng ta cũng có thể chuyển list số thành string trong Python như sau:
my_list = [1, 2, 3, 4] |
- Xem thêm: Hàm str() trong python.
- Xem thêm: Sử dụng list comprehension trong Python.
Lưu ý là với các list 2 chiều chứa phần tử thuộc các kiểu dữ liệu khác như tuple hay list trong list, chúng ta không thể sử dụng trực tiếp phương pháp này được, vì các list và tuple con sẽ bị in luôn ra màn hình như sau.
my_list = [1, ['a', 'b'], 3, 4, (5,6)] |
Khi đó chúng ta cần phải làm thêm một bước nữa mà Kiyoshi sẽ trình bày ở dưới đây.
Chuyển list 2 chiều thành string
Để chuyển list hai chiều thành string trong Python, chúng ta cũng sử dụng phương thức str() Python, tuy nhiên sau đó chúng ta cần xóa đi các ký tự đặc biệt được sử dụng để tạo list, tuple và chuỗi như cặp dấu []
,()
và ''
trong chuỗi kết quả.
Chúng ta sẽ sử dụng kết hợp RegEx trong Python với hàm re.sub() để bỏ đi các ký tự đặc biệt trên ra khỏi string kết quả như sau:
import re |
Chuyển list thành string bằng hàm map()
Chúng ta cũng có thể sử dụng hàm map() để chuyển list sang trong Python. Hàm map() trong Python sẽ chuyển các phần tử trong list chỉ định sang dạng chuỗi và tạo ra một trình lặp. Sau đó chúng ta cũng sử dụng phương thức join() để lấy ra và nối các chuỗi là phần tử của trình lặp này để tạo ra chuỗi string kết quả.
Chúng ta có thể sử dụng cách này với cả các list có phần tử là string, cũng như các list chứa số trong nó.
Ví dụ chúng ta chuyển list thành string với list có phần tử là string bằng hàm map() như sau:
my_list = ["a", "b", "c"] |
Tương tự, chúng ta cũng có thể chuyển list chứa số trong python thành string bằng hàm map() như sau:
my_list2 = [1, 2, 3, 4] |
Chuyển list thành string bằng vòng lặp
Ngoài ra, bạn có thể sử dụng vòng lặp để duyệt qua danh sách và xây dựng chuỗi theo ý muốn. Dưới đây là một ví dụ về cách thực hiện điều này:
my_list = ["apple", "banana", "cherry"] |
Kết quả:
apple, banana, cherry |
Tuy phương pháp này cũng hoạt động, nhưng phương thức join()
vẫn được ưa chuộng hơn vì hiệu suất tốt hơn và mã nguồn ngắn gọn hơn.
Tổng kết
Trên đây Kiyoshi đã hướng dẫn bạn về cách chuyển list thành string trong Python rồi. Để nắm rõ nội dung bài học hơn, bạn hãy thực hành viết lại các ví dụ của ngày hôm nay nhé.
Và hãy cùng tìm hiểu những kiến thức sâu hơn về python trong các bài học tiếp theo.
URL Link
HOME › python cơ bản - lập trình python cho người mới bắt đầu>>09. chuỗi trong python