Phương thức zfill() trong Python | Laptrinhcanban.com

Phương thức zfill() trong Python

Hướng dẫn sử dụng phuơng thức zfill() trong Python. Bạn sẽ học được cách thêm hoặc đệm số 0 vào đầu chuỗi Python bằng zfill() sau bài học này.

Đệm số 0 vào đầu chuỗi Python bằng hàm zfill

zfill() trong Python là phương thức dùng để thêm hoặc đệm số 0 vào đầu chuỗi Python cho đủ độ dài chỉ định.
Chúng ta sử dụng zfill() trong Python với cú pháp sau đây:

str.zfill(width)

Trong đó:

  • str là chuỗi ký tự ban đầu
  • width là chiều dài chỉ định của chuỗi kết quả. Giá trị của này có thể lớn hơn hoặc nhỏ hơn độ dài ban đầu của chuỗi str. Lưu ý chúng ta phải chỉ định width khi dùng phương thức zfill() trong Python.

Phương thức zfill() sẽ đệm các số 0 vào đầu chuỗi ban đầu cho tới khi đạt đủ độ dài chỉ định width mà thôi. Lưu ý là độ dài này bao gồm cả dấu của số trong đó.

Chúng ta sử dụng zfill() cụ thể như sau:

print("89".zfill(5))
#>> 00089

print("12.3".zfill(6))
#>> 0012.3

Nếu trong số chứa dấu thì dấu này cũng sẽ được tính luôn trong độ dài width như sau:

s = '-89'
print(s.zfill(5))
#>> 0089

s = '+12.3'
print(s.zfill(6))
#>> +012.3

Trong trường hợp width - độ dài của chuỗi kết quả nhỏ hơn hoặc bằng với độ dài của chuỗi ban đầu thì chuỗi ban đầu không thay đổi và sẽ được trả về:

# Độ dài chỉ định nhỏ hơn độ dài thực của chuỗi ban đầu
print("12345".zfill(3))
#>> 12345

# Độ dài chỉ định bằng độ dài thực của chuỗi ban đầu
print("12345".zfill(5))
#>> 12345

Ngoài số ra thì chúng ta cũng có thể sử dụng zfill tương tự với chuỗi ký tự. Ví dụ:

print("abc".zfill(5))
#>> 00abc

print("+abc".zfill(5))
#>> +0abc

print("-abc".zfill(5))
#>> -0abc

So sánh rjust() và zfill() trong Python

Bạn có thể thấy zfill() trong Python cũng cho kết quả giống với khi chúng ta dùng rjust() với đối số fillchar bằng 0.

Tuy nhiên điều khác biệt ở đây là nếu chúng ta chỉ định dấu + hoặc - vào trước chuỗi ký tự str, thì zfill() trong Python sẽ lấp chỗ trống bằng ký tự số 0 bắt đầu từ sau dấu + hoặc -, còn rjust() với đối số fillchar bằng 0 sẽ chỉ đơn giản lấp chỗ trống từ trước dấu + hoặc - mà thôi.
Hãy xem kỹ ví dụ sau đây:

Sử dụng zfill() trong Python

print("-123".zfill(8))
#>> -0000123

print("+975".zfill(8))
#>> +0000975

Sử dụng rjust() trong Python với fillchar bằng 0

print("-123".rjust(8,"0"))
#>> 0000-123

print("+975".rjust(8,"0"))
#>> 0000+975

Tổng kết

Trên đây Kiyoshi đã hướng dẫn bạn cách sử dụng phuơng thức zfill() trong Python. Để nắm rõ nội dung bài học hơn, bạn hãy thực hành viết lại các ví dụ của ngày hôm nay nhé.

Và hãy cùng tìm hiểu những kiến thức căn bản về python trong các bài học tiếp theo.

HOME>> >>

Profile
きよしです!笑

Tác giả : Kiyoshi (Chis Thanh)

Kiyoshi là một cựu du học sinh tại Nhật Bản. Sau khi tốt nghiệp đại học Toyama năm 2017, Kiyoshi hiện đang làm BrSE tại Tokyo, Nhật Bản.