Trong bài viết này, chúng ta sẽ tìm hiểu về phương thức isprintable() trong Python và ứng dụng thực tế.
isprintable() là phương thức built-in cho chuỗi (string). Trả về True nếu tất cả ký tự trong chuỗi là ký tự in được (printable) hoặc chuỗi rỗng. Ngược lại trả về False.
Tham số: Không nhận tham số nào.
Ký tự in được bao gồm: chữ cái, số, ký tự đặc biệt, khoảng trắng. Không in được: ký tự điều khiển như \n, \t, \r, các ký tự Unicode control.
Ví dụ 1
# Kiểm tra chuỗi thường st = 'Tutorialspoint' print(st.isprintable()) # True # Kiểm tra chuỗi chứa newline st = 'Tutorials \n point' print(st.isprintable()) # False # Chuỗi rỗng string = '' print(string.isprintable()) # True
Kết quả
True False True
Ví dụ 2
# Ký tự đặc biệt $ & vẫn in được st = 'Tutorials$$point&&' print(st.isprintable()) # True # Tab \t không in được st = 'Tutorials \t point' print(st.isprintable()) # False # Dấu gạch dưới string = '_' print(string.isprintable()) # True
Kết quả
True False True
Ứng dụng thực tế
- Làm sạch dữ liệu đầu ra: Thay thế ký tự không in được bằng ký tự thay thế trước khi in ra console
- Định dạng output: Loại bỏ escape sequence không mong muốn khi hiển thị
Ví dụ ứng dụng
def clean_print(text, replacement='?'):
"""Thay thế ký tự không in được"""
return ''.join(c if c.isprintable() else replacement for c in text)
dirty = "Line 1\nLine 2\tTabbed"
print(clean_print(dirty)) # Line 1?Line 2?Tabbed
Kết luận
isprintable() hữu ích để validate và làm sạch chuỗi trước khi hiển thị hoặc ghi file.