Computer >> Máy Tính >  >> Lập trình >> Python

Chiều rộng khung căn đều trong Python

Giả sử chúng ta có một danh sách các từ, chúng ta phải đóng khung nó trong một vùng hình chữ nhật, từng dòng một. Xem ví dụ để hiểu rõ hơn.

Vì vậy, nếu đầu vào là ['hello', 'world', 'python', 'programming', 'nice'], thì đầu ra sẽ là

 **************** xin chào ** thế giới ** python ** lập trình ** tốt đẹp ****************  

Để giải quyết vấn đề này, chúng tôi sẽ làm theo các bước sau -

  • l:=độ dài của từ có kích thước lớn nhất trong mảng
  • st:=đặt dấu sao (l + 4) lần
  • đối với mỗi i trong các từ, hãy thực hiện
    • st:=st concatenate '*' nối i sau đó thêm khoảng trắng có kích thước (l-size của i + 1) nối '*'
  • st:=nối dấu sao (l + 4) lần với st
  • return st

Hãy cùng chúng tôi xem cách triển khai sau để hiểu rõ hơn -

Ví dụ

 class Giải pháp:def giải (self, words):l =max (len (x) for x in words) st ='*' * (l + 4) + '\ n' for i in words:st + ='*' + i + '' * (l-len (i) +1) + '*' + '\ n' return st + '*' * (l + 4) ob =Lời giải () words =['xin chào', 'world', 'python', 'programming', 'nice'] print (ob.solve (words)) 

Đầu vào

 ['xin chào', 'thế giới', 'con trăn', 'lập trình', 'tốt đẹp'] 

Đầu ra

 **************** xin chào ** thế giới ** python ** lập trình ** tốt đẹp ****************