Làm cách nào để tạo danh sách các chuỗi trong một chuỗi trong python?
Một chuỗi có thể được sử dụng làm dấu phân cách để nối danh sách các chuỗi lại với nhau thành một chuỗi bằng cách sử dụng phương thức Show
Ví dụ sau tách các phần tử chuỗi bằng ba dấu gạch nối Nếu chúng ta muốn biến danh sách này thành một chuỗi duy nhất, chúng ta có thể chuyển nó đến hàm 2 tích hợp
Nhưng kết quả chúng tôi nhận được có lẽ không phải là thứ chúng tôi đang tìm kiếm. Ít nhất là không nếu chúng tôi đang cố chuyển cái này cho người dùng cuối chứ không phải một lập trình viên khác Vì vậy, chúng ta cần tự hỏi mình, chúng ta thực sự đang cố gắng làm gì ở đây? Tham gia một danh sách các chuỗi với nhauNhiều ngôn ngữ lập trình có một phương thức 5 mà bạn có thể gọi trên kiểu danh sách hoặc kiểu mảng, chuyển cho nó một dấu phân cách để nối tất cả các chuỗi trong danh sách đó lại với nhau bằng một dấu phân cách đã cho. Python không có cái này
Trong Python, loại danh sách của chúng tôi không có phương thức 5. Thay vào đó, kiểu chuỗi của chúng ta có phương thức 5________số 8_______ Ở đây, chúng tôi đã yêu cầu ký tự khoảng trắng ( 8) vui lòng sử dụng chính nó làm dấu phân cách, kết hợp các mục trong danh sách các chuỗi mà chúng tôi đã chuyển cho nóChúng ta có thể sử dụng bất kỳ chuỗi nào làm dấu phân cách. Ví dụ: sử dụng 9 làm dấu phân cách sẽ đặt dấu phẩy và dấu cách giữa mỗi chuỗi này
Hoặc một chuỗi trống ( 0) sẽ không đặt gì giữa mỗi từ, nối tất cả chúng lại với nhau (làm mịn chúng lại với nhau thành một từ dài)
Phương thức >>> str(things) "['apples', 'ducks', 'lemons', 'cats', 'potatoes']" 5 của Python sẽ chấp nhận mọi chuỗi có thể lặp lạiTại sao Python làm theo cách này? Python làm theo cách này vì mục đích linh hoạt Trong Python, chúng tôi có rất nhiều loại iterables (không chỉ danh sách) và chúng tôi có xu hướng nghĩ về cách gõ vịt (nếu nó trông giống một con vịt và kêu quạc cạch như một con vịt, thì đó là một con vịt). Đó là, chúng tôi quan tâm đến hành vi (e. g. khả năng lặp lại) của một đối tượng thay vì loại của nó (e. g. danh sách) Bởi vì phương thức 5 thuộc loại chuỗi, chúng ta có thể truyền bất kỳ chuỗi lặp nào cho nó. Ví dụ, chúng ta có thể kết hợp một bộ chuỗi
Hoặc chúng ta có thể kết hợp một đối tượng tệp (các đối tượng tệp có thể lặp lại trong Python và khi bạn lặp qua chúng, bạn sẽ nhận được các dòng)
Chúng ta cũng có thể tham gia cùng nhau một
Biểu thức trình tạo đó sẽ xóa các dòng mới ở cuối mỗi dòng trong một tệp và chúng tôi đang sử dụng phương thức chuỗi 5 để nối các dòng đó với nhau bằng dấu phẩy và dấu cáchChuyển đổi một lần lặp của các chuỗi không thành một chuỗiĐiều gì sẽ xảy ra nếu iterable mà chúng ta đang kết hợp với nhau không phải là iterable của chuỗi? Khi chúng tôi cố gắng kết hợp một lần lặp các mục không phải là chuỗi, chúng tôi sẽ nhận được một 5
Bởi vì chúng ta biết rằng phương thức 5 chấp nhận bất kỳ chuỗi nào có thể lặp lại, nên chúng ta có thể viết một biểu thức trình tạo để chuyển đổi từng mục của chúng ta thành một chuỗi bằng cách chuyển nó đến hàm 2 tích hợp 0Vì vậy, ngay cả khi bạn đang làm việc với một chuỗi không có khả năng lặp lại, bạn có thể nối chúng lại với nhau miễn là trước tiên bạn thực hiện một chút tiền xử lý |