Sẽ có lúc bạn cần chuyển đổi kiểu dữ liệu này sang kiểu dữ liệu khác. Đừng lo, vì Python cung cấp nhiều cách khác nhau để giúp bạn làm điều đó. Trong bài viết này, bạn sẽ thấy một số cách mà bạn có thể chuyển đổi một chuỗi thành một danh sách. Đây

Bạn đang xem: mảng chuỗi trong python

Sẽ có lúc bạn cần chuyển đổi kiểu dữ liệu này sang kiểu dữ liệu khác.

Đừng sợ, vì Python cung cấp nhiều cách khác nhau để giúp bạn làm điều đó.

Trong bài viết này, bạn sẽ thấy một số cách mà bạn có thể chuyển đổi một chuỗi thành một danh sách.

Đây là những gì chúng tôi sẽ đề cập đến:

Chuỗi và danh sách trong Python là gì?

Một chuỗi là một chuỗi ký tự có thứ tự. Nó là một chuỗi các ký tự, với ký tự này nối tiếp ký tự kia.

Một chuỗi được bao quanh bởi dấu ngoặc kép đơn hoặc kép:

  # tất cả những điều sau đây là chuỗi

# một chuỗi được đặt trong dấu ngoặc kép
first_name = 'John'

# một chuỗi được đặt trong dấu ngoặc kép
last_name = "Doe"
 

Nếu bạn muốn tạo một chuỗi kéo dài nhiều dòng hoặc được gọi là chuỗi nhiều dòng, hãy sử dụng dấu ngoặc kép để bắt đầu và kết thúc chuỗi đó:

  # một chuỗi nhiều dòng được đặt trong dấu ngoặc kép ba

cụm từ = '' 'Tôi đang học Python
và tôi thực sự thích học ngôn ngữ!
'' '
 

Các chuỗi là bất biến. Điều này có nghĩa là một khi chúng đã được tạo, chúng không thể thay đổi. Không thể thay đổi các ký tự riêng lẻ tạo nên một chuỗi.

Ví dụ: nếu bạn cố gắng thay đổi chữ cái đầu tiên của một từ từ viết thường sang viết hoa, bạn sẽ gặp lỗi trong mã của mình:

  # hãy thử và thay đổi chữ thường 'p' thành chữ hoa 'P'
fave_language = "python"
fave_language [0] = "P"

print (fave_language)

# đầu ra sẽ là một thông báo lỗi
#fave_language [0] = "P"
#TypeError: Đối tượng 'str' không hỗ trợ gán mục
 

Tuy nhiên, bạn có thể chỉ định lại một chuỗi khác bằng cách cập nhật biến, như sau:

  fave_language = "python"
fave_language = "Python"

print (fave_language)

#output
#Python
 

Danh sách là một tập hợp dữ liệu có thứ tự.

Nhiều mục (thường có liên quan) được lưu trữ cùng nhau trong cùng một biến.

Bạn có thể tạo danh sách bằng cách đặt không hoặc nhiều mục trong dấu ngoặc vuông, [] , mỗi mục được phân tách bằng dấu phẩy.

Một danh sách có thể chứa bất kỳ kiểu dữ liệu tích hợp nào của Python.

  # danh sách các số
my_numbers_list = [10,20,30,40,50]

print (my_numbers_list)

#output
# [10, 20, 30, 40, 50]
 

Danh sách có thể thay đổi.

Bạn có thể thay đổi các mục trong danh sách sau khi danh sách đã được tạo. Điều này có nghĩa là bạn có thể sửa đổi các mục hiện có, thêm các mục mới hoặc xóa các mục bất kỳ lúc nào trong thời gian của chương trình.

  Progra_languages ​​= ["Javascript", "Python", "Java"]

# cập nhật mục đầu tiên trong danh sách
Progra_languages ​​[0] = "JavaScript"

print (ngôn ngữ lập trình)

#output
# ['JavaScript', 'Python', 'Java']
 

Cách xác định loại dữ liệu của một đối tượng trong Python

Để tìm kiểu dữ liệu của một đối tượng trong Python, hãy sử dụng hàm type () tích hợp sẵn, có cú pháp sau:

  type (đối tượng)

Đối tượng #where là đối tượng bạn cần tìm kiểu dữ liệu
 

Hàm type () sẽ trả về kiểu của đối tượng đã được truyền làm đối số cho hàm.

Điều này thường được sử dụng cho mục đích gỡ lỗi.

Hãy xem cách sử dụng type () với các chuỗi và danh sách trong ví dụ bên dưới:

  my_name = "John Doe"
my_lucky_numbers = [7,14,33]

print (type (my_name))
print (type (my_lucky_numbers))

#output
# & lt; lớp 'str' & gt;
# & lt; 'danh sách' lớp & gt;
 

Cách chuyển đổi một chuỗi thành một danh sách các ký tự riêng lẻ

Bạn có thể lấy một từ và chuyển nó thành một danh sách.

Mỗi ký tự tạo nên từ đó sẽ trở thành một phần tử riêng lẻ và riêng biệt bên trong danh sách.

Ví dụ: hãy lấy văn bản “Python”.

Bạn có thể chuyển đổi nó thành một danh sách các ký tự, trong đó mỗi mục danh sách sẽ là mỗi ký tự tạo nên chuỗi “Python”.

Xem Thêm  Creating a Custom Inventory Management Application in PHP and MySQL - parseint php

Điều này có nghĩa là ký tự P sẽ là một mục trong danh sách, yKý tự sẽ là một mục danh sách khác, ký tự t sẽ là một ký tự khác, v.v.

Cách đơn giản nhất là nhập chuỗi truyền vào danh sách.

Tyepcasting có nghĩa là chuyển đổi trực tiếp từ kiểu dữ liệu này sang kiểu dữ liệu khác – trong trường hợp này là từ kiểu dữ liệu chuỗi sang kiểu dữ liệu danh sách.

Bạn thực hiện việc này bằng cách sử dụng hàm list () tích hợp sẵn và chuyển chuỗi đã cho làm đối số cho hàm.

  Progra_language = "Python"

Progra_language_list = list (ngôn ngữ lập trình)

in (danh_sách_chương_trình)

#output
# ['P', 'y', 't', 'h', 'o', 'n']
 

Hãy xem một ví dụ khác:

  current_routine = "Học Python!"

current_routine_list = list (current_routine)

print (current_routine_list)

#output
# ['', 'L', 'e', ​​'a', 'r', 'n', 'i', 'n', 'g', '', 'P', 'y', 't ',' h ',' o ',' n ',' ','! ',' ']
 

Văn bản "Học Python!" có cả khoảng trắng đầu và cuối, khoảng trắng giữa các từ “Học” và “Python” và khoảng trắng giữa từ “Python” và dấu chấm than. < / p>

Khi chuỗi được chuyển đổi thành một danh sách các ký tự, mọi khoảng trắng được coi là một ký tự riêng lẻ và đó là lý do tại sao bạn thấy các khoảng trống, '' , dưới dạng các mục danh sách.

Để chỉ xóa khoảng trắng từ đầu và cuối chuỗi, hãy sử dụng phương thức strip () .

  current_routine = "Học Python!"

# khoảng trắng ở đầu và cuối sẽ không còn là các phần tử riêng biệt trong danh sách
current_routine_list = list (current_routine.strip ())

print (current_routine_list)

#output
# ['L', 'e', ​​'a', 'r', 'n', 'i', 'n', 'g', '', 'P', 'y', 't', ' h ',' o ',' n ',' ','! ']
 

Để xóa tất cả, không chỉ khoảng trắng đầu và cuối và làm cho nó không có ký tự khoảng trắng nào được đưa vào danh sách mới, hãy sử dụng phương thức Replace () :

  current_routine = "Học Python!"

# thay thế mọi trường hợp của khoảng trắng không có khoảng trắng
current_routine_list = list (current_routine.replace ("", ""))

print (current_routine_list)

#output
# ['L', 'e', ​​'a', 'r', 'n', 'i', 'n', 'g', 'P', 'y', 't', 'h', 'trên', '!']
 

Cách chuyển đổi chuỗi thành danh sách từ

Một cách khác để chuyển đổi chuỗi thành danh sách là sử dụng phương thức Python split () .

Phương thức split () chia một chuỗi thành một danh sách, trong đó mỗi mục danh sách là mỗi từ tạo nên chuỗi.

Mỗi từ sẽ là một mục danh sách riêng lẻ.

Phân tích cú pháp của phương thức split () trong Python

Cú pháp chung cho phương thức split () như sau:

  string.split (dấu phân tách = Không, maxsplit = -1)
 

Hãy chia nhỏ nó:

  • string là chuỗi đã cho bạn muốn chuyển thành danh sách.
  • Phương thức split () biến một chuỗi thành một danh sách. Nó có hai tham số tùy chọn.
  • dấu phân tách là tham số tùy chọn đầu tiên và nó xác định nơi chuỗi sẽ phân tách. Theo mặc định, dấu phân tách là khoảng trắng và chuỗi sẽ phân chia bất kỳ nơi nào có bất kỳ khoảng trắng nào.
  • maxsplit là tham số tùy chọn thứ hai. Nó chỉ định số lượng phân chia tối đa để thực hiện. Giá trị mặc định, -1 , có nghĩa là nó phân chia trên toàn bộ chuỗi và không có giới hạn cho việc phân tách.

Hãy xem một ví dụ về cách hoạt động.

  cluster = "Tôi đang học Python!"

print (gõ (cụm từ))

#output
# & lt; lớp 'str' & gt;
 

Trong chuỗi trên, mỗi từ tạo thành chuỗi được phân tách bằng khoảng trắng.

Để biến chuỗi đó thành một danh sách các từ, hãy sử dụng phương thức split () .

Bạn không cần chỉ định dấu phân tách hoặc tham số maxsplit , vì chúng tôi muốn phân tách tất cả các từ ở bất kỳ nơi nào có khoảng trắng giữa chúng.

  cluster = "Tôi đang học Python!"

cluster_to_list = cluster.split ()

print (cụm từ_to_list)
print (type (cụm từ_to_list))


#output
# ['I', 'am', 'learning', 'Python', '!']
# & lt; 'danh sách' lớp & gt;
 

Chuỗi được phân tách dựa trên vị trí có bất kỳ khoảng trắng nào và mỗi từ tạo nên chuỗi được biến thành một mục danh sách riêng lẻ.

Cách sử dụng phương thức split () với Dấu phân tách

Bạn cũng có thể chuyển đổi một chuỗi thành một danh sách bằng dấu phân tách với phương thức split () . Dấu phân tách có thể là bất kỳ ký tự nào bạn chỉ định.

Xem Thêm  Hướng dẫn cơ bản về câu lệnh SQL DROP TABLE - mệnh đề bảng thả sql được sử dụng để

Chuỗi sẽ phân tách dựa trên dấu phân tách bạn cung cấp.

Ví dụ: bạn có thể sử dụng dấu phẩy, , , làm dấu phân tách.

Chuỗi sẽ chuyển thành danh sách bất cứ khi nào có dấu phẩy, bắt đầu từ bên trái.

Các mục được phân tách bằng dấu phẩy sẽ là các mục trong danh sách riêng lẻ.

Hãy lấy chuỗi sau:

  cluster = "Xin chào mọi người, tôi đang học Python!"
 

Có một dấu phẩy ngăn cách Hello world với Tôi đang học Python! .

Nếu chúng tôi muốn sử dụng dấu phẩy đó làm dấu phân tách để tạo hai mục danh sách riêng lẻ, chúng tôi sẽ thực hiện như sau:

  cluster = "Xin chào mọi người, tôi đang học Python!"

cụm từ_to_list = cụm từ.split (",")

print (cụm từ_to_list)

#output
# ['Hello world', 'Tôi đang học Python!']
 

Hai mục riêng biệt đã được tạo dưới dạng mục danh sách và sự phân tách diễn ra khi có dấu phẩy.

Một ví dụ khác có thể là tách tên miền, bất cứ khi nào có dấu chấm, . .

  domain_name = "www.freecodecamp.org"

domain_name_list = domain_name.split (".")

print (domain_name_list)

#output
# ['www', 'freecodecamp', 'org']
 

Mỗi khi có dấu chấm, một mục danh sách mới sẽ được thêm vào danh sách.

Cách sử dụng phương thức split () với maxsplit Tham số

Như đã đề cập trước đó, maxsplit là một tham số tùy chọn của phương thức split () .

Nó xác định có bao nhiêu phần tử của danh sách sẽ được tách và chuyển thành các mục danh sách riêng lẻ. Theo mặc định, nó được đặt thành -1 , có nghĩa là tất cả các phần tử tạo nên chuỗi sẽ được chia nhỏ.

Nhưng chúng tôi có thể thay đổi giá trị thành một số cụ thể.

Để chỉ tách hai từ chứ không phải mọi từ, chúng tôi đặt maxsplit thành hai:

  current_routine = "Tôi thích học Python hàng ngày"

current_routine_list = current_routine.split (maxsplit = 2)

print (current_routine_list)

#output
# ['Tôi', 'tận hưởng', 'học Python hàng ngày']
 

maxsplit được đặt thành 2 , có nghĩa là tối đa chỉ hai từ sẽ được phân chia theo khoảng trắng và sẽ tạo thành hai mục danh sách riêng lẻ. Mục danh sách thứ ba sẽ là phần còn lại của các từ tạo nên chuỗi ban đầu.

Sử dụng một ví dụ khác từ phần trên, bạn có thể kết hợp dấu phân tách với maxsplit để thực hiện chuyển đổi được nhắm mục tiêu từ một chuỗi thành một danh sách:

  domain_name = "www.freecodecamp.org"

domain_name_list = domain_name.split (".", maxsplit = 1)

print (domain_name_list)

#output
# ['www', 'freecodecamp.org']
 

Trong ví dụ này, dấu phân tách là một dấu chấm và chỉ phần tử đầu tiên được phân tách.

Cách chuyển đổi chuỗi số nguyên thành danh sách số nguyên

Các số được coi là chuỗi khi chúng được đặt trong dấu ngoặc kép hoặc đơn.

Giả sử bạn đã lưu trữ ngày tháng năm sinh của mình dưới dạng chuỗi, chẳng hạn như:

  Birthdate = "19/10/1993"

print (type (ngày sinh))

#output
# & lt; lớp 'str' & gt;
 

Để loại bỏ các dấu gạch chéo và lưu trữ các số được liên kết với ngày, tháng và năm sinh dưới dạng các mục danh sách riêng biệt, bạn sẽ thực hiện như sau:

  Birthdate = "19/10/1993"

Birthdate_list = Birthdate.split ("/")

print (ngày sinh_danh sách)
print (type (ngày sinh_danh sách))

#output
# ['19', '10', '1993']
# & lt; 'danh sách' lớp & gt;
 

Trong ví dụ, dấu phân tách là dấu gạch chéo, / và bất cứ khi nào có dấu gạch chéo, một mục danh sách mới sẽ được tạo.

Nếu bạn xem xét kỹ hơn đầu ra, bạn sẽ thấy rằng các mục trong danh sách vẫn là chuỗi, vì chúng được bao quanh bởi các dấu ngoặc kép và không có chuyển đổi loại.

Để chuyển đổi từng mục danh sách từ một chuỗi thành một số nguyên, hãy sử dụng hàm map .

Hàm map có hai đối số:

  • Một chức năng. Trong trường hợp này, hàm sẽ là hàm int .
  • Có thể lặp lại, là một chuỗi hoặc tập hợp các mục. Trong trường hợp này, danh sách có thể lặp lại là danh sách chúng tôi đã tạo.
  Birthdate = "19/10/1993"

Birthdate_list = Birthdate.split ("/")

str_to_int = (bản đồ (int, ngày sinh_danh sách))

print (str_to_int)

#output
# & lt; đối tượng bản đồ ở 0x10e289960 & gt;
 

Đó không phải là đầu ra chính xác mà chúng tôi mong muốn. Khi kiểm tra loại dữ liệu, chúng tôi thấy rằng chúng tôi không còn có danh sách nữa:

  print (type (str_to_int))

#output
# & lt; lớp 'bản đồ' & gt;
 

Để sửa lỗi này, thay vào đó, chúng tôi cần quay lại và thêm hàm list () trước khi chuyển đổi:

 Birthdate = "19/10/1993"

Birthdate_list = Birthdate.split ("/")

str_to_int = list (map (int, sinhdate_list))

print (type (str_to_int))
print (str_to_int)

#output
# & lt; 'danh sách' lớp & gt;
# [19, 10, 1993]
 

Kết luận

Và bạn đã có nó! Bây giờ bạn đã biết một số cách để chuyển đổi một chuỗi thành một danh sách trong Python.

Xem Thêm  Đặc điểm thơ quang dũng

Để tìm hiểu thêm về ngôn ngữ lập trình Python, hãy xem Máy tính khoa học có chứng chỉ Python của freeCodeCamp.

Bạn sẽ bắt đầu từ những điều cơ bản và học theo cách tương tác và thân thiện với người mới bắt đầu. Cuối cùng, bạn cũng sẽ xây dựng năm dự án để đưa vào thực tế và giúp củng cố những gì bạn đã học được.

Cảm ơn bạn đã đọc và chúc bạn viết mã vui vẻ!


Xem thêm những thông tin liên quan đến chủ đề mảng chuỗi trong python

Lập trình Python cơ bản || Bài 6: Mảng một chiều trong Python || Học Và Giải Trí

  • Tác giả: Học Và Giải Trí
  • Ngày đăng: 2021-07-11
  • Đánh giá: 4 ⭐ ( 2255 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Lập Trình Python cơ bản || Bài 6: Mảng một chiều trong Python || Học Và Giải Trí
    Fanpage: https://www.facebook.com/hoclaptrinh.scratch.python.c.coban/?ref=pages_you_manage
    Đề thi tin học trẻ: https://tinhoctrekhongchuyen.blogspot.com/
    – Xin vui lòng đăng kí kênh giúp tôi, để tôi có động lực làm theeo nhiều Video hơn nữa

Các hàm xử lý chuỗi trong Python

  • Tác giả: toidicode.com
  • Đánh giá: 3 ⭐ ( 6109 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Ở phần đầu của series mình đã giới thiệu với mọi người về chuỗi trong Python rồi, nhưng Python là một ngôn ngữ khá là linh động và mềm dẻo nên nó cũng đã cung cấp cho chúng ta rất nhiều hàm có sẵn dùng để xử lý chuỗi. Bài viết này mình sẽ liệt kê một số hàm hay dùng và ví dụ kèm theo cho mọi người cùng tham khảo.

Danh sách Python, mảng Numpy và chuỗi Pandas

  • Tác giả: ichi.pro
  • Đánh giá: 3 ⭐ ( 1033 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Giả sử bạn có các số lẻ từ 1 đến 20 và bạn đang lưu trữ chúng theo những cách sau: 1. Danh sách Python Danh sách là một trong 4 kiểu dữ liệu tích hợp sẵn trong Python để lưu trữ nhiều mục (3 kiểu dữ liệu khác là từ điển, bộ giá trị và bộ).

Chuỗi (String) trong Python

  • Tác giả: viettuts.vn
  • Đánh giá: 4 ⭐ ( 9993 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Chuỗi (String) trong Python là một trong các kiểu phổ biến nhất trong Python. String trong Python là immutable. Chúng ta có thể tạo các chuỗi bằng cách

Chuỗi (String) trong Python

  • Tác giả: www.codehub.com.vn
  • Đánh giá: 3 ⭐ ( 7574 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Chuỗi trong python được bao quanh bởi dấu nháy đơn hoặc nháy kép Ví dụ như: ‘hello’ và “hello” là giống nhau

Chuyển string sang list trong Python

  • Tác giả: laptrinhcanban.com
  • Đánh giá: 3 ⭐ ( 2512 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: 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.

Mảng Trong Python

  • Tác giả: techacademy.edu.vn
  • Đánh giá: 5 ⭐ ( 3292 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Mảng trong Python là loại cấu trúc dữ liệu có thể chứa nhiều giá trị cùng kiểu. Thông thường, chúng bị hiểu sai thành những lists hoặc mảng Numpy. Về mặt kỹ thuật, mảng trong Python khác với cả hai khái niệm trên. Trong bài viết này, hãy cùng tìm hiểu xem mảng trong Python […]

Xem thêm các bài viết khác thuộc chuyên mục: Kiến thức lập trình

By ads_php