Trong hướng dẫn này, chúng ta sẽ viết một chương trình chia chuỗi đã cho thành các phần bằng nhau. Hãy xem một ví dụ.
Đầu vào
string = 'Tutorialspoint' each_part_length = 5
Đầu ra
Tutor ialsp ointX
Đầu vào
string = 'Tutorialspoint' each_part_length = 6
Đầu ra
Tutori alspoi ntXXXX
Chúng tôi sẽ sử dụng zip_longest phương pháp từ itertools để đạt được kết quả.
Phương pháp zip_longest lấy trình lặp như đối số. Chúng tôi cũng có thể vượt qua giá trị lấp đầy để phân vùng chuỗi. Nó sẽ trả về danh sách các bộ giá trị chứa các ký tự có số lượng bằng nhau.
zip_longest trả về một bộ giá trị trên mỗi lần lặp cho đến khi bộ lặp dài nhất trong bộ đã cho hết. Và bộ tuple chứa độ dài các ký tự đã cho từ các trình vòng lặp.
Ví dụ
# importing itertool module import itertools # initializing the string and length string = 'Tutorialspoint' each_part_length = 5 # storing n iterators for our need iterator = [iter(string)] * each_part_length # using zip_longest for dividing result = list(itertools.zip_longest(*iterator, fillvalue='X')) # converting the list of tuples to string # and printing it print(' '.join([''.join(item) for item in result]))
Đầu ra
Nếu bạn chạy đoạn mã trên, thì bạn sẽ nhận được kết quả sau.
Tutor ialsp ointX
Ví dụ
# importing itertool module import itertools # initializing the string and length string = 'Tutorialspoint' each_part_length = 6 # storing n iterators for our need iterator = [iter(string)] * each_part_length # using zip_longest for dividing result = list(itertools.zip_longest(*iterator, fillvalue='X')) # converting the list of tuples to string # and printing it print(' '.join([''.join(item) for item in result]))
Đầu ra
Nếu bạn chạy đoạn mã trên, thì bạn sẽ nhận được kết quả sau.
Tutori alspoi ntXXXX
Kết luận
Nếu bạn có nghi ngờ trong hướng dẫn, hãy đề cập đến chúng trong phần bình luận.