Hướng dẫn python prettytable wrap text - văn bản bọc đẹp trong python
Tôi có các chuỗi có độ dài khác nhau mà tôi muốn in trong một mẫu như sau: Show
Mà xuất hiện như,
Vấn đề là các chuỗi văn bản đôi khi dài hơn 55 ký tự, làm hỏng định dạng. Tôi đã thử sử dụng TextWrapper,
Nhưng điều này dường như không giúp được gì. Một ý tưởng? Cảm ơn! PrettyTable và TextWrap để định dạng một từ điển (ví dụ: Os.environ)
Tệp này chứa văn bản unicode hai chiều có thể được giải thích hoặc biên dịch khác với những gì xuất hiện dưới đây. Để xem xét, hãy mở tệp trong một trình soạn thảo cho thấy các ký tự Unicode ẩn. Tìm hiểu thêm về các ký tự unicode hai chiều
Văn bản back-endCác tùy chọn sau đây có sẵn khi phụ trợ văn bản được sử dụng. Chúng có thể được truyền làm từ khóa khi gọi hàm 5:
Các giá trị của 0 sẽ được thêm vào vectơ này. Do đó, các đường ngang có thể được vẽ ngay cả khi 8 là 3.
Các từ khóa sau liên quan đến bút chì màu có sẵn để tùy chỉnh trang trí đầu ra:
Các từ khóa 72 và 73 có thể là 74 hoặc 75. Trong trường hợp đầu tiên, 74 sẽ được áp dụng cho tất cả các yếu tố. Trong phần thứ hai, mỗi phần tử có thể có bút chì màu riêng, nhưng độ dài của vectơ phải bằng số lượng cột trong dữ liệu.Nếu trình kết xuất 77 được sử dụng, thì tất cả các chuỗi sẽ được in với các trích dẫn xung quanh. Tuy nhiên, nếu một định dạng sửa đổi một giá trị và trả về một chuỗi, thì các trích dẫn xung quanh sẽ bị xóa nếu giá trị ban đầu không phải là một chuỗi.bút chì màuMột 74 là một đối tượng xử lý một kiểu cho văn bản được in trên các thiết bị đầu cuối. Nó được xác định trong gói bút chì màu.jl. Có nhiều tùy chọn có sẵn để tùy chỉnh kiểu, chẳng hạn như màu nền, màu nền, văn bản đậm, v.v.A 74 có thể được tạo theo hai cách khác nhau:
Để biết thêm thông tin, hãy xem tài liệu Crayon.jl. Gói Crayon.jl được xuất trình lại bằng cách đẹp mắt.jl. Do đó, bạn không cần 80 để tạo 74.Cắt xénTừ khóa 6 có thể được sử dụng để xác định cách đầu ra sẽ được cắt nếu màn hình có giới hạn. Hành vi mặc định phụ thuộc vào thuộc tính 83 của 4. Nếu 4 có 5, giá trị mặc định của 6 là 0. Mặt khác, nếu 89 hoặc nó hoàn toàn không được xác định, thì 6 mặc định là 3.Nếu 5 được gọi mà không có 4, thì 94 được bọc trong một 95 với 5.Kích thước hiển thị có thể được cấu hình bởi từ khóa 9, tương ứng là hai 7 với số lượng hàng và cột tương ứng. Nếu từ khóa này không được chỉ định, thì nó sẽ tự động lấy bằng cách sử dụng hàm 6.
Trong cắt xén dọc, tiêu đề và hàng bảng đầu tiên luôn được in.always printed. Các highlighter sẽ hoạt động ngay cả trong dữ liệu được in một phần. Nếu người dùng chọn một kích thước cố định cho các cột (sử dụng từ khóa 5), hãy cho phép ngắt dòng (sử dụng từ khóa 01) và đặt 02, thì thuật toán kết thúc văn bản trên khoảng trống để tự động lắp không gian.
Cũng có thể thay đổi hành vi cắt dọc để cắt bàn ở giữa thay vì phía dưới. Điều này có thể được thực hiện bằng cách chuyển tùy chọn 03 sang 5:
Văn bản HighlightersMột tập hợp các highlighters có thể được truyền dưới dạng 05 cho từ khóa 06. Mỗi highllight là một thể hiện của cấu trúc 2 chứa ba trường:
Hàm 21 có chữ ký sau:
trong đó 12 là một tham chiếu đến dữ liệu đang được in và 23 và 24 là các tọa độ phần tử đang được kiểm tra. Nếu hàm này trả về 3, thì ô 11 sẽ được tô sáng.Nếu hàm 21 trả về đúng, thì hàm 28 sẽ được gọi và phải trả về 74 sẽ được áp dụng cho ô.Một highllight có thể được xây dựng bằng ba người trợ giúp:
nơi nó sẽ xây dựng một 74 bằng cách sử dụng các từ khóa trong 31 và áp dụng nó cho ô được tô sáng,
nơi nó sẽ áp dụng 32 cho ô được tô sáng và 0nơi nó sẽ áp dụng 74 được trả về bởi hàm 20 cho ô được tô sáng.Nếu chỉ cần một highllight duy nhất, thì nó có thể được chuyển trực tiếp đến từ khóa 35 mà không ở trong 05.
Nếu nhiều máy đánh bóng có giá trị đối với phần tử 11, thì kiểu ứng dụng sẽ bằng với trận đấu đầu tiên xem xét thứ tự trong tuple 06.Nếu các highlight được sử dụng cùng với các định dạng, thì sự thay đổi trong định dạng sẽ không ảnh hưởng đến tham số 12 được truyền cho hàm highllight 21. Nó sẽ luôn nhận được giá trị ban đầu, không được định dạng.will not affect the parameter 12 passed to the highlighter function 21. It will always
receive the original, unformatted value. 1 2Có một tập hợp các máy đánh dấu được xác định trước (với tên 41) để làm cho việc sử dụng đơn giản hơn. Chúng được xác định trong tệp 42.Định dạng bảng văn bảnCác định dạng bảng sau đây có sẵn khi sử dụng back-end văn bản: 35 (mặc định)Default) 3 44 4 45 5 46 6 47 7 48 8 49 9Trong trường hợp này, định dạng bảng 50 đã được in với tùy chọn 51. 52 0 53 1 54 2Định dạng 55 sẽ trông khủng khiếp trên trình duyệt của bạn, nhưng nó nên được in tốt trên thiết bị đầu cuối của bạn. 3Cũng có thể xác định bảng tùy chỉnh của bạn bằng cách tạo một thể hiện mới của cấu trúc 00. Ví dụ: giả sử bạn muốn một bảng như 57 không in điểm mấu chốt: 4hoặc không in dòng tiêu đề: 5Để biết thêm thông tin, hãy xem tài liệu của cấu trúc 00.Tế bào văn bản tùy chỉnhPrettyTables.jl thoát khỏi tất cả các chuỗi ANSI theo mặc định để mọi ký tự trong ô có thể in được. Hành vi này cho phép chúng tôi dễ dàng tính toán kích thước tế bào, điều này rất cần thiết cho nhiều tính năng như căn chỉnh và cắt xén. Tuy nhiên, có những trường hợp cụ thể trong đó người dùng muốn hiển thị một ô với các chuỗi thoát không tạo ra các ký tự có thể in. Trong trường hợp này, người dùng phải tạo một ô văn bản tùy chỉnh. escapes all ANSI sequences by default so that every character in the cell is printable. This behavior let us to easily compute the cell size, which is essential to many features like alignment and cropping. However, there are specific cases in which the user wants to render a cell with escape sequences that does not produce printable characters. In this case, the user must create a custom text cell. Một ô văn bản tùy chỉnh là một đối tượng của một loại có nguồn gốc từ 59. Chúng ta hãy giả sử rằng chúng ta muốn tạo một ô tùy chỉnh được gọi là 60. Đối tượng này phải tuân thủ API bằng cách xác định các chức năng sau: 6Nối 61 vào dòng 62 của văn bản ô tùy chỉnh 63. 7Áp dụng cho dòng 62 của ô văn bản tùy chỉnh 63 Phần đệm với các không gian 66 ở bên trái và các không gian 67 ở bên phải. 8Cây trồng 68 ký tự từ dòng 62 của ô văn bản tùy chỉnh 63. 9Trả về dòng có thể in 62 của ô văn bản tùy chỉnh 63. 0Trả về dòng được hiển thị 62 của ô văn bản tùy chỉnh 62. 1Phân tích văn bản ô và trả về một vectơ của 75 với văn bản ô có thể in, trong đó mỗi phần tử trong vectơ là một dòng mới.Dữ liệu được trả về chỉ chứa các ký tự có thể in.only the printable characters. Các đối số từ khóa sau đây được truyền đến hàm này, được gọi trong giai đoạn phân tích cú pháp ô. Các tùy chọn này có liên quan đến cấu hình đầu vào của 5 và người dùng phải chọn có hỗ trợ chúng hay không.
2Đặt lại tất cả các trường trong ô văn bản tùy chỉnh 63.Hàm 95 không cần thiết cho API. Nó được gọi trước khi phân tích các ô văn bản tùy chỉnh.URLTEXTCELLCó một ô văn bản tùy chỉnh được gói với forceTables.jl được gọi là 96. Loại này bổ sung hỗ trợ cho các siêu liên kết ngầm kết xuất bằng cách sử dụng chuỗi thoát 97. Do đó, người dùng có thể hiển thị một văn bản có siêu liên kết được liên kết với nó.PrettyTables.jl called 96. This type
adds support for rendering implicit hyperlinks using the escape sequence 97. Hence, the user can render a text that has a hyperlink associated with it.Một 96 có thể được tạo với chức năng sau: 3tạo ra một ô URL với 99 cụ thể chỉ vào 00. 4Tính năng này không được hỗ trợ bởi tất cả các trình giả lập thiết bị đầu cuối. |