Trong bài viết này, chúng ta sẽ học cách xác định xem một chuỗi có phải là "pangram" hay không trong Python 3.x. Hoặc sớm hơn. Một chuỗi pangram chứa mọi chữ cái trong danh sách các bảng chữ cái tiếng Anh. Hãy cùng chúng tôi xem hình minh họa bên dưới -
Provided Input: str = 'This is the python blog on Tutorial point' Desired Output: No Provided Input : str='I want to contribute to a 'dxyzwuvghlkfmq' open source project' Desired Output: Yes
Theo định nghĩa, một pangram hoàn hảo bao gồm mọi chữ cái trong ‘26 bảng chữ cái tiếng Anh’ đúng một lần. Hướng dẫn này không bao gồm khái niệm về 'pangram hoàn hảo'.
Bây giờ, hãy xem xét tuyên bố vấn đề và tập hợp các ràng buộc.
Tuyên bố sự cố - Đưa ra một chuỗi kiểm tra xem nó có phải là Pangram hay không.
Ràng buộc
- Chữ thường và chữ hoa được coi là giống nhau.
- Không có sự ép buộc nào đối với trường hợp Pangram hoàn hảo như đã thảo luận ở trên.
Input: First line of input contains the test string ‘str_input ’ Output: Print 'String is a Pangram' if conditions evaluate to be true, otherwise it displays 'String is not a Pangram'.
Cấu trúc dữ liệu có liên quan
Đặt () &Liệt kê () Tổng hợp
Điều kiện tiên quyết
Chuỗi &Hoạt động Chuỗi
Hãy để chúng tôi xem nhanh thuật toán mà chúng tôi đang triển khai trong vấn đề này -
-
Nhiệm vụ đầu tiên của chúng tôi là chuyển đổi chuỗi đầu vào hoàn chỉnh thành chữ thường hoặc chữ hoa. Ở đây tôi đang sử dụng chuyển đổi chữ hoa bằng cách sử dụng upper () phương thức của kiểu dữ liệu “chuỗi” trong Python 3.x. Hoặc sớm hơn.
-
Bây giờ với sự trợ giúp của (str_input) , chúng ta có thể tạo danh sách tất cả các phần tử riêng biệt có trong chuỗi đầu vào.
-
Bây giờ chúng tôi sẽ tạo một danh sách mới “dist_list” chứa tất cả các bảng chữ cái riêng biệt mà không có bất kỳ số hoặc ký tự đặc biệt nào.
-
Bây giờ, hãy kiểm tra xem độ dài của dist_list là 26 hoặc không. Nếu điều kiện đúng, đầu vào là Pangram, ngược lại thì không.
Ví dụ
# user-defined function to check Pangram def check_pangram(input): # convert input string into uppercase str_input = str_input.upper() # convert input string into Set() # a list of distinct elements will be formed. str_input = set(str_input) # separate out alphabets from numbers and special characters # ord(ch) returns the ASCII value of the character dist_list = [ char for char in str_input if ord(char) in range(ord('a'), ord('z')+1)] if len(dist_list) == 26: return 'String is a Pangram' else: return 'String is not a Pangram' # Executable main function if __name__ == "__main__": str_input = input() print check_pangram(str_input)
Kết luận
Trong bài viết này, chúng ta đã học cách tìm ra một chuỗi có phải là Pangram hay không bằng cách sử dụng Python 3.x. Hoặc sớm hơn. Bạn có thể triển khai cùng một thuật toán để tạo chương trình phát hiện pangram bằng bất kỳ ngôn ngữ lập trình nào khác.