Lập trình Python: các phương thức string

Các phương thức chuỗi kí tự

Một phương thức (method) là một hoạt động tùy theo dạng của giá trị. Các chuỗi kí tự có một số
lượng lớn các phương thức. Ví dụ, có một phương thức được gọi là upper, cái sinh ra phiên bản chữ
hoa của chuỗi kí tự:

>>> ‘hello’.upper()
‘HELLO’

Thông tin bạn nhận trở lại từ một phương thức được biết đến như là giá trị trả về (return value) của
phương thức. Ví dụ, chúng ta có thể nói cho ví dụ trước rằng upper trả về chuỗi kí tự HELLO.
Thực hiện một phương thức trên một giá trị được biết đến như là gọi một phương thức. Gọi một phương
thức đòi hỏi đặt toán tử chấm . giữa giá trị và tên phương thức. Nó cũng yêu cầu dấu () sau tên
phương thức. Cho một vài phương thức, chúng ta để dấu () đó rỗng như khi gọi upper.
Cho các phương thức khác, chúng ta có thể tùy chọn bao gồm thông tin ở đó. Các phương thức vẫn yêu
thông tin và sẽ không làm việc mà không có nó. Thông tin chúng ta bao gồm khi gọi một phương thức
được đề cập đến như là các đối số (arguments) của phương thức.
Ví dụ, chuỗi kí tự có một phương thức strip. Nếu được gọi không có đối số, strip loại bỏ không gian
trước và sau chuỗi kí tự:

>>> ‘ abc’.strip()
‘abc’
>>> ‘ abc ‘.strip()
‘abc’
>>> ‘abc’.strip()
‘abc’

Nhưng chúng ta cũng có thể gọi nó với một chuỗi kí tự như là đối số. Nếu chúng ta làm như vậy, đối số
đó sẽ quyết định những kí tự nào bị loại bỏ khỏi phần bắt đầu và kết thúc:

>>> ‘abc’.strip(‘a’)
‘bc’
>>> ‘abca’.strip(‘a’)
‘bc’
>>> ‘abca’.strip(‘ac’)
‘b’

Hãy nói về một phương thức string nữa:count. Chúng ta truyền cho nó một đối số chuỗi kí tự
, và nó thông báo cho chúng ta có bao nhiêu lần xuất hiện của đối số đó được tìm thấy trong
chuỗi kí tự của chúng ta:

>>> ‘abc’.count(‘a’)
1
>>> ‘abc’.count(‘q’)
0
>>> ‘aaabcaa’.count(‘a’)
5
>>> ‘aaabcaa’.count(‘ab’)
1

Nếu sự xuất hiện của đối số đè lên nhau, chỉ cái đầu tiên được đếm:

>>> ‘ababa’.count(‘aba’)
1

Không giống các phương thức khác tôi đã mô tả, count là trực tiếp hữu dụng đối với vấn đề đếm
từ của chúng ta.
Nghĩ về một chuỗi kí tự như ‘this is a string with a few words‘. Nhận thấy rằng một khoảng trắng
đến sau mỗi từ. Trên thực tế, nếu bạn phải đếm số từ bằng tay, bạn có thể sử dụng các khoảng
trắng để thông báo cho bạn biết nơi nào mỗi từ kết thúc. Cái gì xảy ra nếu chúng ta đếm số các
khoảng trắng trong một chuỗi kí tự? Để làm cái đó, chúng ta có thể truyền một chuỗi kí tự chứa
một kí tự khoảng trắng đơn để đếm. Nó trông như thế này:

>>> ‘this is a string with a few words’.count(‘ ‘)
7

Chúng ta nhận một giá trị 7. Cái đó hoàn toàn không phải số từ – chuỗi kí tự có 8 từ – nhưng chúng
ta đã gần đúng. Tại sao chúng ta nhận kết quả 7 thay vì 8?
Lí do là rằng mỗi từ có một khoảng trắng sau nó ngoại trừ từ cuối cùng. Đếm các khoảng trắng vì vậy
thất bại vì từ cuối cùng. Để chữa cái này, chúng ta cần học làm cách nào xử lí các số.

Chia sẻ

Leave a Reply

Your email address will not be published. Required fields are marked *