BUILT-IN FUNCTIONS
DICTIONARY METHODS
LIST METHODS
SET METHODS
STRING METHODS
TUPLE METHODS
PYTHON FUNCTION
CÁC CHỦ ĐỀ
BÀI MỚI NHẤT
MỚI CẬP NHẬT

Thông báo: Download 4 khóa học Python từ cơ bản đến nâng cao tại đây.

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

Trong bài này, mình sẽ giới thiệu cho các bạn một chủ đề quan trọng trong Python - các hàm sử lý chuỗi. Chuỗi là một loại dữ liệu phổ biến trong lập trình, và việc làm việc hiệu quả với chuỗi là một kỹ năng quan trọng mà mọi lập trình viên cần nắm vững.

test php

banquyen png
Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.

Các hàm sử lý chuỗi trong Python cung cấp các công cụ mạnh mẽ để cắt, ghép, thay thế, và biến đổi chuỗi theo nhu cầu của bạn. Bằng cách sử dụng các phương thức và phép toán đơn giản, ta có thể thực hiện nhiều tác vụ khác nhau như tìm kiếm ký tự, đếm độ dài, chuyển đổi chữ hoa/chữ thường, và nhiều hơn nữa.

Hãy cùng tìm hiểu các hàm sử lý chuỗi trong Python qua bài viết này.

Cú pháp và cách khai báo chuỗi trong Python

Trước khi bạn tìm hiểu các phương thức và thao tác sử lý chuỗi trong Python, hãy tìm hiểu về cách khởi tạo chuỗi và các cú pháp cơ bản liên quan.

Bài viết này được đăng tại [free tuts .net]

Để khởi tạo một chuỗi trong Python, bạn có thể sử dụng dấu nháy đơn ('') hoặc dấu nháy kép (""). Ví dụ:

str_1 = 'Đây là một chuỗi sử dụng dấu nháy đơn.'
str_2 = "Đây là một chuỗi sử dụng dấu nháy kép."

Bạn cũng có thể sử dụng dấu nháy ba (''' ''') hoặc dấu nháy ba kép (""" """) để khởi tạo chuỗi đa dòng (multiline string). Ví dụ:

str_da_dong = '''Đây là một chuỗi đa dòng.
Dòng thứ hai trong chuỗi.
Dòng thứ ba trong chuỗi.'''

Python cũng hỗ trợ việc truyền biến vào chuỗi sử dụng phép toán % hoặc hàm format(). Ví dụ:

ten = "Alice"
str_format = "Xin chào, %s!" % ten
str_fstrings = f"Xin chào, {ten}!"

Trong ví dụ trên, %s hoặc {ten} được sử dụng để đại diện cho giá trị biến ten trong chuỗi.

Đó là các cú pháp cơ bản để khởi tạo chuỗi trong Python. Bây giờ bạn đã sẵn sàng để tiếp tục tìm hiểu các hàm và thao tác sử lý chuỗi trong Python.

Các hàm xử lý chuỗi trong Python thường dùng

Cắt chuỗi (Slicing)

Cú pháp cắt chuỗi

Trong Python, mình có thể cắt một chuỗi thành một phần tử hoặc một phần của chuỗi gốc bằng cú pháp slicing. Cú pháp chung để cắt chuỗi là chuỗi[start:end:step].

  • start: Vị trí bắt đầu cắt (được tính từ 0, nếu là số âm, nghĩa là tính từ phần tử cuối cùng của chuỗi).
  • end: Vị trí kết thúc cắt (không bao gồm phần tử này).
  • step (tùy chọn): Bước nhảy, mặc định là 1.

Ví dụ minh họa:

str= "Xin chào các bạn"

# Lấy một phần của chuỗi
phần_tử = str[4]; print(phần_tử) 
 # Output: 'c'

# Lấy một phần của chuỗi từ vị trí 4 đến vị trí 9
phần_cắt = str[4:9] ;print(phần_cắt) 
 # Output: 'chào '

# Lấy một phần của chuỗi từ vị trí -4 đến vị trí cuối cùng
phần_cắt_âm = str[-4:] ;print(phần_cắt_âm) 
 # Output: 'bạn'

# Lấy một phần của chuỗi với bước nhảy là 2
phần_cắt_bước_nhảy = str[1:10:2] ; print(phần_cắt_bước_nhảy) 
 # Output: 'nhà á'

# Lấy chuỗi đảo ngược
đảo_ngược = str[::-1] ;print(đảo_ngược)  
# Output: 'ủaibác oàhc nix'

Trong các ví dụ trên, mình sử dụng cú pháp slicing để cắt chuỗi str thành các phần tử hoặc phần của chuỗi gốc. Việc sử dụng slicing cho phép bạn truy xuất và xử lý dữ liệu trong chuỗi một cách linh hoạt và tiện lợi.

Gộp chuỗi (Concatenation)

Cú pháp gộp chuỗi

Trong Python, bạn có thể gộp (concatenate) các chuỗi lại với nhau bằng cách sử dụng toán tử cộng (+) hoặc hàm str.join().

Sử dụng toán tử cộng (+):

chuoi_gop = str_1 + str_2

Sử dụng hàm str.join():

chuoi_gop = "".join([str_1, str_2])

Ví dụ minh họa:

str_1 = "Xin chào"
str_2 = "các bạn"
chuoi_gop = str_1 + " " + str_2
print(chuoi_gop)  # Output: 'Xin chào các bạn'

# Sử dụng hàm str.join()
chuoi_gop = "".join([str_1, " ", str_2])
print(chuoi_gop)  # Output: 'Xin chào các bạn'

Trong ví dụ trên, mình sử dụng toán tử cộng (+) và hàm str.join() để gộp chuỗi str_1 str_2 lại với nhau. Kết quả của cả hai phương pháp đều là chuỗi "Xin chào các bạn".

Các hàm kiểm tra chuỗi trong Python

Kiểm tra độ dài chuỗi

Hàm len()

Trong Python, mình có thể sử dụng hàm len() để kiểm tra độ dài của một chuỗi, tức là số lượng ký tự trong chuỗi đó.

do_dai = len(str)

Ví dụ minh họa:

str = "Xin chào các bạn"; do_dai = len(str); print(do_dai)
  # Output: 16

Trong ví dụ trên, mình sử dụng hàm len(chuoi) để kiểm tra độ dài của chuỗi str. Kết quả là 16 vì chuỗi "Xin chào các bạn" có 16 ký tự.

Hàm len() rất hữu ích để xác định kích thước của chuỗi và sử dụng thông tin này cho các phép toán và xử lý khác trên chuỗi.

Chuyển đổi chữ hoa/chữ thường

Hàm upper()

Hàm upper() được sử dụng để chuyển đổi tất cả các ký tự trong chuỗi thành chữ hoa.

chuoi_hoa = str.upper()

Hàm lower()

Hàm lower() được sử dụng để chuyển đổi tất cả các ký tự trong chuỗi thành chữ thường.

chuoi_thuong = str.lower()

Ví dụ minh họa:

str = "Xin chào CÁC BẠN"
chuoi_hoa = str.upper()
chuoi_thuong = str.lower()

print(chuoi_hoa)     # Output: 'XIN CHÀO CÁC BẠN'
print(chuoi_thuong)  # Output: 'xin chào các bạn'

Trong ví dụ trên, ta sử dụng hàm upper() để chuyển đổi chuỗi str thành chữ hoa và lưu kết quả vào chuoi_hoa. Tương tự, ta sử dụng hàm lower() để chuyển đổi chuỗi str thành chữ thường và lưu kết quả vào chuoi_thuong. Kết quả được in ra là "XIN CHÀO CÁC BẠN" và "xin chào các bạn" tương ứng.

Xóa khoảng trắng đầu và cuối chuỗi

Hàm strip()

Hàm strip() được sử dụng để xóa khoảng trắng đầu và cuối chuỗi. Nó trả về một bản sao của chuỗi đã bị xóa khoảng trắng ở đầu và cuối.

chuoi_sau_xoa_khoang_trang = str.strip()

Ví dụ minh họa:

str = "   Xin chào các bạn    "
chuoi_sau_xoa_khoang_trang = str.strip()

print(chuoi_sau_xoa_khoang_trang)  # Output: 'Xin chào các bạn'

Trong ví dụ trên, chuỗi str ban đầu chứa khoảng trắng ở đầu và cuối. Sử dụng hàm strip(), mình tạo ra một bản sao của chuỗi đã bị xóa khoảng trắng ở đầu và cuối, và lưu nó vào chuoi_sau_xoa_khoang_trang. Kết quả được in ra là 'Xin chào các bạn', không chứa khoảng trắng đầu và cuối.

Kiểm tra ký tự trong chuỗi

Hàm count()

Hàm count() được sử dụng để đếm số lần xuất hiện của một ký tự trong chuỗi.

so_lan_xuat_hien = str.count(ky_tu)

Hàm find()

Hàm find() được sử dụng để tìm vị trí đầu tiên xuất hiện của một ký tự trong chuỗi. Nếu không tìm thấy, nó trả về -1.

vi_tri = str.find(ky_tu)

Ví dụ minh họa:

str= "Xin chào các bạn"
ky_tu = 'à'

so_lan_xuat_hien = str.count(ky_tu)
vi_tri = str.find(ky_tu)

print(so_lan_xuat_hien)  # Output: 1
print(vi_tri)           # Output: 6

Trong ví dụ trên, ta sử dụng hàm count() để đếm số lần ký tự 'à' xuất hiện trong chuỗi str. Kết quả là 1 vì 'à' chỉ xuất hiện một lần trong chuỗi. Sau đó, sử dụng hàm find() để tìm vị trí đầu tiên xuất hiện của ký tự 'à' trong chuỗi str. Kết quả là 6, đại diện cho vị trí đầu tiên của ký tự 'à' trong chuỗi.

Các hàm định dạng chuỗi trong Python

Định dạng chuỗi với hàm format()

Cú pháp format()

Hàm format() được sử dụng để định dạng chuỗi bằng cách chèn các giá trị vào vị trí được chỉ định trong chuỗi.

chuoi_da_dinh_dang = str.format(gia_tri_1, gia_tri_2, ...)

Trong cú pháp trên, {} được sử dụng làm vị trí chèn giá trị, và các giá trị được chèn vào vị trí tương ứng thông qua hàm format().

Ví dụ minh họa:

ten = "John"
tuoi = 25
chieu_cao = 180

chuoi_dinh_dang = "Tên: {}, Tuổi: {}, Chiều cao: {}cm".format(ten, tuoi, chieu_cao)
print(chuoi_dinh_dang)
# Output: 'Tên: Hoa, Tuổi: 25, Chiều cao: 180cm'

Trong ví dụ trên,ta sử dụng hàm format() để định dạng chuỗi. Các giá trị ten, tuoi, và chieu_cao được chèn vào vị trí tương ứng trong chuỗi "Tên: {}, Tuổi: {}, Chiều cao: {}cm". Kết quả được in ra là 'Tên: Hoa, Tuổi: 25, Chiều cao: 180cm'.

F-strings - Định dạng chuỗi trong Python 3.6+:

Cú pháp F-strings

F-strings (Formatted string literals) là một cách tiện lợi để định dạng chuỗi trong Python 3.6 trở lên. Chúng cho phép chèn các biểu thức Python vào trong chuỗi bằng cách sử dụng tiền tố f hoặc F trước dấu ngoặc kép bao quanh chuỗi.

chuoi_da_dinh_dang = f"Chuỗi {bieu_thuc}"

Trong cú pháp trên, bieu_thuc là biểu thức Python mà ta muốn chèn vào chuỗi.

Ví dụ minh họa:

ten = "Hoa"
tuoi = 20

chuoi_dinh_dang = f"Tên: {ten}, Tuổi: {tuoi}"
print(chuoi_dinh_dang)
# Output: 'Tên: Hoa, Tuổi: 20'

Trong ví dụ trên, ta sử dụng F-strings để định dạng chuỗi. Biến ten tuoi được chèn vào chuỗi sử dụng cú pháp {} và được đánh giá là giá trị tương ứng. Kết quả được in ra là 'Tên: John, Tuổi: 25'.

Lưu ý rằng F-strings chỉ khả dụng từ Python 3.6 trở lên.

Trên đây là một số hàm cơ bản để xử lý chuỗi trong Python. Chúng bao gồm cắt chuỗi, gộp chuỗi, kiểm tra và biến đổi chuỗi. Ta đã tìm hiểu về cú pháp và ví dụ minh họa cho mỗi hàm. Chúc các bạn học tốt!

Cùng chuyên mục:

Triển khai Decision Tree bằng Python

Triển khai Decision Tree bằng Python

SVM (Support Vector Machine) bằng Python

SVM (Support Vector Machine) bằng Python

Bắt đầu tìm hiểu Perceptron bằng Python

Bắt đầu tìm hiểu Perceptron bằng Python

Thuật toán Naive Bayes trong Python

Thuật toán Naive Bayes trong Python

Hồi quy tuyến tính và hồi quy Logistic trong Python

Hồi quy tuyến tính và hồi quy Logistic trong Python

Hồi Quy Logistic (Logistic Regression) trong Python

Hồi Quy Logistic (Logistic Regression) trong Python

Hồi quy tuyến tính (Linear Regression) trong Python

Hồi quy tuyến tính (Linear Regression) trong Python

KNN (K Nearest Neighbors) trong Python

KNN (K Nearest Neighbors) trong Python

Hướng dẫn sử dụng Anaconda bằng Python

Hướng dẫn sử dụng Anaconda bằng Python

Hướng dẫn Web Scraping tự động tải hình ảnh với Python

Hướng dẫn Web Scraping tự động tải hình ảnh với Python

Tạo danh sách phim ngẫu nhiên với Python

Tạo danh sách phim ngẫu nhiên với Python

List Comprehension trong Python

List Comprehension trong Python

Cách thêm Progress Bar trong Python với chỉ một dòng Code

Cách thêm Progress Bar trong Python với chỉ một dòng Code

Toán tử Walrus Operator- Tính năng mới trong Python 3.8

Toán tử Walrus Operator- Tính năng mới trong Python 3.8

Cách nạp dữ liệu Machine Learning từ File trong Python

Cách nạp dữ liệu Machine Learning từ File trong Python

Hướng dẫn sử dụng Google Sheets API với Python

Hướng dẫn sử dụng Google Sheets API với Python

Xây dựng  web Python tự động hóa Twitter | Flask, Heroku, Twitter API & Google Sheets API

Xây dựng web Python tự động hóa Twitter | Flask, Heroku, Twitter API & Google Sheets API

Xây dựng Web Machine Learning đẹp mắt với Streamlit và Scikit-learn trong Python

Xây dựng Web Machine Learning đẹp mắt với Streamlit và Scikit-learn trong Python

Hướng dẫn tạo Chatbot đơn giản bằng PyTorch

Hướng dẫn tạo Chatbot đơn giản bằng PyTorch

11 mẹo và thủ thuật để viết Code Python hiệu quả hơn

11 mẹo và thủ thuật để viết Code Python hiệu quả hơn

Top