Danh sách các phương thức chuỗi để thao tác chữ hoa và chữ thường trong Python

Kinh doanh

Kiểu chuỗi (str) của Python đạt tiêu chuẩn với các phương thức thuận tiện để thao tác với chữ hoa và chữ thường. Bạn có thể chuyển đổi giữa chữ hoa và chữ thường và xác định trường hợp.

Thông tin sau được cung cấp ở đây.

  • Chuyển đổi giữa chữ hoa và chữ thường
    • Cách sử dụng cơ bản
    • Xử lý các ký tự kích thước đầy đủ và nửa kích thước
    • str.upper()Chuyển tất cả các chữ cái sang chữ hoa
    • str.lower()Chuyển tất cả các chữ cái thành chữ thường
    • str.capitalize()Chuyển chữ cái đầu tiên thành chữ hoa và phần còn lại thành chữ thường.
    • str.title()Chuyển chữ cái đầu tiên của từ thành chữ hoa và phần còn lại thành chữ thường.
    • str.swapcase()Chuyển chữ hoa thành chữ thường và chữ thường thành chữ hoa.
  • Xác định chữ hoa và chữ thường
    • str.isupper(): Xác định xem tất cả các chữ cái đều là chữ hoa
    • str.islower(): Xác định xem tất cả các ký tự có phải là chữ thường hay không.
    • str.istitle(): Xác định xem nó có phải là một trường hợp tiêu đề hay không.
  • So sánh các chuỗi theo cách không phân biệt chữ hoa chữ thường

Chuyển đổi giữa chữ hoa và chữ thường

Cách sử dụng cơ bản

Đầu tiên, tôi sẽ giải thích cách sử dụng cơ bản. Chúng tôi sẽ sử dụng phương thức upper () để viết hoa tất cả các chữ cái làm ví dụ, nhưng điều này cũng áp dụng cho các phương thức khác.

Để thuận tiện, chúng tôi viết “chuyển đổi”, nhưng trong Python, các đối tượng kiểu chuỗi (str) không thể cập nhật được, vì vậy bản thân chuỗi gốc (s_org trong ví dụ) không bị thay đổi.

s_org = 'pYThon proGramminG laNguAge'

print(s_org.upper())
# PYTHON PROGRAMMING LANGUAGE

print(s_org)
# pYThon proGramminG laNguAge

Nếu bạn muốn sử dụng chuỗi đã chuyển đổi sau này, bạn có thể lưu trữ nó trong một biến mới như sau.

s_new = s_org.upper()
print(s_new)
# PYTHON PROGRAMMING LANGUAGE

Cũng có thể ghi đè biến ban đầu.

s_org = s_org.upper()
print(s_org)
# PYTHON PROGRAMMING LANGUAGE

Xử lý các ký tự kích thước đầy đủ và nửa kích thước

Nếu một ký tự phân biệt chữ hoa chữ thường, chẳng hạn như bảng chữ cái, nó sẽ được chuyển đổi thành cả ký tự byte đơn và byte kép.

Các ký tự không phân biệt chữ hoa chữ thường, chẳng hạn như số và ký tự Trung Quốc, không thay đổi. Ví dụ dành cho upper (), nhưng điều tương tự cũng áp dụng cho các phương thức khác.

s_org = 'Pyhon Python 123'

print(s_org.upper())
# PYHON PYTHON 123

str.upper (): chuyển đổi tất cả các chữ cái thành chữ hoa

s_org = 'pYThon proGramminG laNguAge'

print(s_org.upper())
# PYTHON PROGRAMMING LANGUAGE

str.lower (): chuyển đổi tất cả các ký tự thành chữ thường

s_org = 'pYThon proGramminG laNguAge'

print(s_org.lower())
# python programming language

str.capitalize (): chuyển chữ cái đầu tiên thành chữ hoa, phần còn lại thành chữ thường

s_org = 'pYThon proGramminG laNguAge'

print(s_org.capitalize())
# Python programming language

str.title (): chuyển chữ cái đầu tiên của từ thành chữ hoa và phần còn lại thành chữ thường

Chuyển đổi sang cái gọi là trường hợp tiêu đề.

s_org = 'pYThon proGramminG laNguAge'

print(s_org.title())
# Python Programming Language

str.swapcase (): chuyển đổi chữ hoa thành chữ thường, chữ thường thành chữ hoa

Hoán đổi chữ hoa và chữ thường.

s_org = 'pYThon proGramminG laNguAge'

print(s_org.swapcase())
# PytHON PROgRAMMINg LAnGUaGE

Xác định chữ hoa và chữ thường

Trong các ví dụ sau, các phương thức được gọi trực tiếp từ các ký tự chuỗi chẳng hạn như ‘python’, nhưng điều này cũng đúng khi được lưu trữ trong các biến như trong các ví dụ trước.

str.isupper (): xác định xem tất cả các chữ cái đều là chữ hoa

isupper () trả về true nếu nó chứa ít nhất một ký tự phân biệt chữ hoa chữ thường và tất cả chúng đều là chữ hoa, ngược lại là false.

print('PYTHON'.isupper())
# True

print('Python'.isupper())
# False

Nếu ký tự phân biệt chữ hoa chữ thường, thì ngay cả các ký tự 2 byte cũng được đánh giá.

print('PYTHON'.isupper())
# True

Nếu ngay cả một ký tự phân biệt chữ hoa chữ thường được bao gồm, thì ký tự không phân biệt chữ hoa chữ thường sẽ bị bỏ qua, nhưng nếu không có ký tự phân biệt chữ hoa chữ thường nào được bao gồm (tất cả các ký tự đều không phân biệt chữ hoa chữ thường) thì quyết định đó là sai.

print('PYTHON 123'.isupper())
# True

print('123'.isupper())
# False

str.islower (): xác định xem tất cả các ký tự đều là chữ thường

islower () trả về true nếu nó chứa ít nhất một ký tự phân biệt chữ hoa chữ thường và tất cả chúng đều là chữ thường, ngược lại là false.

print('python'.islower())
# True

print('Python'.islower())
# False

Nếu ký tự phân biệt chữ hoa chữ thường, thì ngay cả các ký tự 2 byte cũng được đánh giá.

print('python'.islower())
# True

Nếu ngay cả một ký tự phân biệt chữ hoa chữ thường được bao gồm, thì ký tự không phân biệt chữ hoa chữ thường sẽ bị bỏ qua, nhưng nếu không có ký tự phân biệt chữ hoa chữ thường nào được bao gồm (tất cả các ký tự đều không phân biệt chữ hoa chữ thường) thì quyết định đó là sai.

print('python 123'.islower())
# True

print('123'.islower())
# False

str.istitle (): Xác định xem trường hợp có phải là trường hợp tiêu đề hay không.

istitle () trả về true nếu chuỗi là chữ hoa tiêu đề (chữ cái đầu tiên của từ là chữ hoa, các chữ còn lại là chữ thường), ngược lại là false.

print('Python Programming Language'.istitle())
# True

print('PYTHON Programming Language'.istitle())
# False

Nếu nó chứa các ký tự không phân biệt chữ hoa chữ thường, thì nó sẽ là false nếu các ký tự không phân biệt chữ hoa chữ thường đứng trước một chữ cái thường.

print('★Python Programming Language'.istitle())
# True

print('Python★ Programming Language'.istitle())
# True

print('Py★thon Programming Language'.istitle())
# False

Lưu ý rằng không có nhiều chuỗi như ví dụ trên, nhưng thực tế là bao gồm các số ở dạng số thứ tự và các trường hợp khác.

print('The 1st Team'.istitle())
# False

print('The 1St Team'.istitle())
# True

Nếu không có ký tự phân biệt chữ hoa chữ thường nào được bao gồm (tất cả các ký tự đều không phân biệt chữ hoa chữ thường), false.

print('123'.istitle())
# False

So sánh các chuỗi theo cách không phân biệt chữ hoa chữ thường

Khi so sánh các chuỗi, các chữ cái viết hoa và viết thường khác nhau không được coi là tương đương.

s1 = 'python'
s2 = 'PYTHON'

print(s1 == s2)
# False

Nếu bạn muốn so sánh không phân biệt chữ hoa chữ thường, bạn có thể sử dụng upper () hoặc Lower () để chuyển đổi hai và so sánh chúng.

print(s1.upper() == s2.upper())
# True

print(s1.lower() == s2.lower())
# True

print(s1.capitalize() == s2.capitalize())
# True

print(s1.title() == s2.title())
# True
Copied title and URL