Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Chương trình Python sắp xếp chuỗi theo số lượng dấu câu


Khi cần sắp xếp các chuỗi theo số lượng dấu câu, ta định nghĩa hàm nhận chuỗi, dùng list comprehension và toán tử in với string.punctuation.

Ví dụ

from string import punctuation

def get_punctuation_count(my_str):
    return len([element for element in my_str if element in punctuation])

my_list = ["python@%^", "is", "fun!", "to@#r", "@#$learn!"]
print("Danh sách ban đầu:")
print(my_list)
my_list.sort(key=get_punctuation_count)
print("Kết quả:")
print(my_list)

Kết quả

Danh sách ban đầu: ['python@%^', 'is', 'fun!', 'to@#r', '@#$learn!']
Kết quả: ['is', 'fun!', 'to@#r', 'python@%^', '@#$learn!']

Giải thích

  • Nhập punctuation từ module string.

  • Hàm get_punctuation_count đếm số ký tự trong chuỗi thuộc tập dấu câu.

  • Định nghĩa danh sách chuỗi và hiển thị.

  • Sắp xếp với key=get_punctuation_count.

  • In kết quả: chuỗi ít dấu câu nhất đứng đầu.