Chuyển String Sang List Trong Python

Hướng dẫn cách chuyển string sang list trong Python. Bạn sẽ học được tất cả các cách chuyển string sang list trong Pythonsau bài học này.

  • Nếu bạn muốn làm ngược lại, hãy xem bài viết: Chuyển list thành string trong Python.

Chuyển string sang list trong Python | Hàm list() python

Hàm list() trong python là một hàm tạo (constructor) trong class List và được sử dụng để tạo list từ các giá trị được chỉ định.Bằng cách chỉ định đối số của hàm list() là một string, chúng ta có thể chuyển string sang list trong Python như ví dụ sau:

Copy
mystring = 'cityboy'mylist= list(mystring)print(mylist)#>> ['c', 'i', 't', 'y', 'b', 'o', 'y']

Chúng ta cũng có thể làm tương tự với các chuỗi chứa số trong nó như sau:

Copy
mystring = 'cityboy1968'mylist= list(mystring)print(mylist)#>> ['c', 'i', 't', 'y', 'b', 'o', 'y', '1', '9', '6', '8']
  • Xem thêm: Hàm list() trong python và cách tạo list từ iterable

Tách chuỗi chỉ định và chuyển string sang list trong python | Phương thức split()

Đối với các chuỗi mà ký tự trong nó được phân cách bởi dấu phân tách hoặc các ký tự chỉ định, chúng ta có thể tách chuỗi này bằng dấu phân tách hoặc ký tự chỉ định đó và thu về kết quả dưới dạng một list bằng cách sử dụng phương thức split() trong Python.

Ví dụ, chúng ta có thể sử dụng split() và chuyển string sang list trong python với một chuỗi ban đầu có các ký tự phân tách nhau bởi dấu cách như sau:

Copy
mystring = 'Thứ 6 ngày 25 tháng 6 năm 2021'mylist = mystring.split()print(mylist)#>> ['Thứ', '6', 'ngày', '25', 'tháng', '6', 'năm', '2021']

Hoặc là với một chuỗi có các ký tự được phân tách bởi chuỗi ký tự bất kỳ, chúng ta có thể tách chuỗi ban đầu bởi chuỗi đó và chuyển string sang list trong python bằng phương thức split() như sau:

Copy
mystring = 'Đỏ và đen và nâu và trắng'mylist = mystring.split(' và ')print(mylist)#>> ['Đỏ', 'đen', 'nâu', 'trắng']

Cách này sẽ đặc biệt hữu dụng khi bạn muốn tạo một list từ một chuỗi liệt kê phần tử như trên.

  • Xem thêm: Tách chuỗi trong python

Tách số và ký tự trong chuỗi và chuyển string sang list trong python | RegEx trong Python

Đối với các chuỗi chứa cả số và ký tự trong nó mà chúng ta muốn tách riêng số và ký tự thành các phần tử trong list python, ví dụ như chuỗi 'Năm 2021' thành ['Năm', 2021] chẳng hạn, chúng ta có thể sử dụng tới RegEx trong Python để tách số và ký tự trong chuỗi trước khi nối các kết quả thành list trong python.

Ví dụ cụ thể:

Copy
import remystring = 'Thứ 6 ngày 25 tháng 6 năm 2021'm = re.findall(r'\d+', mystring) m1 = re.sub(r'\d','', mystring).split()mylist = m + m1print(m)print(m1)print(mylist)#>> ['6', '25', '6', '2021']#>> ['Thứ', 'ngày', 'tháng', 'năm']#>> ['6', '25', '6', '2021', 'Thứ', 'ngày', 'tháng', 'năm']

Một ví dụ khác:

Copy
import restring = "apple 123 cherry 456 banana 789"my_list = re.findall(r'\d+', string)print(my_list)

Kết quả sẽ là danh sách các số: [“123”, “456”, “789”].

Một ví dụ khác nữa:

Copy
import remystring = 'a12b34c1991'm = re.findall(r'\d+', mystring) m1 = re.sub(r'\d','', mystring).split()mylist = m + m1print(m)print(m1)print(mylist)#>> ['12', '34', '1991']#>> ['abc']#>> ['12', '34', '1991', 'abc']

Phương pháp này sẽ đặc biệt hữu ích khi bạn cần lấy ra các dãy số trong một dải mật mã, hoặc là lấy id Facebook của một người trong một chuỗi ký tự bao gồm cả các ký tự làm nhiễu chẳng hạn.

  • Xem thêm: Tách số trong chuỗi python
  • Xem thêm: Thêm phần tử vào list và kết hợp các list với nhau trong python

Sử dụng list comprehension

List comprehension là một cách tạo danh sách mới từ một chuỗi bằng cách sử dụng một biểu thức. Bạn có thể duyệt qua từng ký tự trong chuỗi và thêm chúng vào danh sách mới.

Ví dụ:

Copy
string = "Hello, world"my_list = [char for char in string]print(my_list)

Kết quả sẽ là danh sách [“H”, “e”, “l”, “l”, “o”, “,”, “ “, “w”, “o”, “r”, “l”, “d”].

Sử dụng phương thức splitlines() (đối với nhiều dòng)

Nếu bạn có một chuỗi chứa nhiều dòng và muốn chuyển chúng thành danh sách các dòng, bạn có thể sử dụng phương thức splitlines().

Ví dụ:

Copy
string = "Line 1\nLine 2\nLine 3"my_list = string.splitlines()print(my_list)

Kết quả sẽ là danh sách [“Line 1”, “Line 2”, “Line 3”].

Tổng kết

Trên đây Kiyoshi đã hướng dẫn bạn về cách chuyển string sang list trong Python rồi. Việc lựa chọn cách thích hợp phụ thuộc vào nhiệm vụ cụ thể của bạn và định dạng của chuỗi ban đầu. Điều quan trọng là bạn nên hiểu rõ cách mà mỗi phương pháp hoạt động để sử dụng chúng một cách hiệu quả trong ứng dụng của mình.

URL Link

https://laptrinhcanban.com/python/nhap-mon-lap-trinh-python/list-trong-python/chuyen-string-sang-list-trong-python/

Từ khóa » Tách String Thành List