Hướng dẫn python f-string justify - python f-string justify
Cải thiện bài viết Show
Lưu bài viết Cải thiện bài viết Lưu bài viết ĐọcString Alignment the output string can be aligned by defining the alignment as left, right or center and also defining space (width) to reserve for the string. Bàn luậnWe will be using the f-strings to format the text. The syntax of the alignment of the output string is defined by ‘<‘, ‘>’, ‘^’ and followed by the width number. Căn chỉnh văn bản trong Python rất hữu ích để in ra đầu ra được định dạng sạch. Một số lần dữ liệu được in có độ dài khác nhau khiến nó trông lộn xộn khi được in. Bằng cách sử dụng căn chỉnh chuỗi, chuỗi đầu ra có thể được căn chỉnh bằng cách xác định căn chỉnh theo bên trái, phải hoặc trung tâm và cũng xác định không gian (chiều rộng) để dành cho chuỗi.For Left Alignment output string syntax define ‘<‘ followed by the width number. Cách tiếp cận: Chúng tôi sẽ sử dụng các chuỗi F để định dạng văn bản. Cú pháp của sự liên kết của chuỗi đầu ra được xác định bởi ‘,,‘^và theo sau là số chiều rộng. Ví dụ 1: Đối với Chuỗi đầu ra căn chỉnh bên trái Xác định Syntax xác định ‘ Left Aligned Text
Left Text Centered Text Right Text9 Name Marks Division ID Raj 7 A 21 Shivam 9 A 52 Shreeya 8 C 27 Kartik 5 B 380 Name Marks Division ID Raj 7 A 21 Shivam 9 A 52 Shreeya 8 C 27 Kartik 5 B 385 Name Marks Division ID Raj 7 A 21 Shivam 9 A 52 Shreeya 8 C 27 Kartik 5 B 382 Ví dụ 1: Đối với Chuỗi đầu ra căn chỉnh bên trái Xác định Syntax xác định ‘ Right Aligned Text
Left Text Centered Text Right Text9 Name Marks Division ID Raj 7 A 21 Shivam 9 A 52 Shreeya 8 C 27 Kartik 5 B 380 Name Marks Division ID Raj 7 A 21 Shivam 9 A 52 Shreeya 8 C 27 Kartik 5 B 389 Name Marks Division ID Raj 7 A 21 Shivam 9 A 52 Shreeya 8 C 27 Kartik 5 B 382 Ví dụ 1: Đối với Chuỗi đầu ra căn chỉnh bên trái Xác định Syntax xác định ‘ Centered
Đầu ra: Ví dụ 2: Đối với Chuỗi đầu ra căn chỉnh bên phải Xác định ‘> Sau đó là số chiều rộng. Ví dụ 3: Đối với Chuỗi đầu ra căn chỉnh trung tâm Cú pháp xác định ‘^, theo sau là số chiều rộng. Left Text Centered Text Right Text9 Name Marks Division ID Raj 7 A 21 Shivam 9 A 52 Shreeya 8 C 27 Kartik 5 B 380 2Name Marks Division ID Raj 7 A 21 Shivam 9 A 52 Shreeya 8 C 27 Kartik 5 B 382 Ví dụ 1: Đối với Chuỗi đầu ra căn chỉnh bên trái Xác định Syntax xác định ‘ Left Text Centered Text Right Text
Đầu ra: Ví dụ 2: Đối với Chuỗi đầu ra căn chỉnh bên phải Xác định ‘> Sau đó là số chiều rộng. Ví dụ 3: Đối với Chuỗi đầu ra căn chỉnh trung tâm Cú pháp xác định ‘^, theo sau là số chiều rộng. Ví dụ 4: Các biến in ở định dạng căn chỉnh Left Text Centered Text Right Text9 Name Marks Division ID Raj 7 A 21 Shivam 9 A 52 Shreeya 8 C 27 Kartik 5 B 380 Right Aligned Text10 Name Marks Division ID Raj 7 A 21 Shivam 9 A 52 Shreeya 8 C 27 Kartik 5 B 382 1 2 3Right Aligned Text21 Left Text Centered Text Right Text9 Name Marks Division ID Raj 7 A 21 Shivam 9 A 52 Shreeya 8 C 27 Kartik 5 B 380 Right Aligned Text24 Name Marks Division ID Raj 7 A 21 Shivam 9 A 52 Shreeya 8 C 27 Kartik 5 B 382 Ví dụ 1: Đối với Chuỗi đầu ra căn chỉnh bên trái Xác định Syntax xác định ‘ Name Marks Division ID Raj 7 A 21 Shivam 9 A 52 Shreeya 8 C 27 Kartik 5 B 38 Kể từ Python 3.6, dây F là một cách mới tuyệt vời để định dạng chuỗi. Họ không chỉ dễ đọc hơn, súc tích hơn và ít bị lỗi hơn so với các cách định dạng khác, mà chúng còn nhanh hơn! Đến cuối bài viết này, bạn sẽ tìm hiểu cách thức và lý do bắt đầu sử dụng F-Strings ngay hôm nay. Nhưng trước tiên, ở đây, cuộc sống như thế nào trước F-String, trở lại khi bạn phải đi bộ đến trường lên dốc cả hai cách trong tuyết. Chuỗi của trường cũ ở trường học ở PythonTrước Python 3.6, bạn đã có hai cách chính để nhúng các biểu thức python bên trong các chuỗi chữ để định dạng: %-formatting và Right Aligned Text26. Bạn có thể xem cách sử dụng chúng và những hạn chế của chúng là gì. Tùy chọn số 1: %-FormattingĐây là OG của định dạng Python và đã có trong ngôn ngữ kể từ khi bắt đầu. Bạn có thể đọc thêm trong các tài liệu Python. Hãy nhớ rằng %-formatting không được khuyến nghị bởi các tài liệu, trong đó có lưu ý sau:
Cách sử dụng %-formattingCác đối tượng chuỗi có hoạt động tích hợp bằng toán tử Right Aligned Text28 mà bạn có thể sử dụng để định dạng chuỗi. Ở đây, những gì trông giống như trong thực tế: >>>
Để chèn nhiều hơn một biến, bạn phải sử dụng một bộ biến số của các biến đó. Đây là cách bạn sẽ làm điều đó: >>>
Tại sao %-Formatting là tuyệt vờiCác ví dụ mã mà bạn vừa thấy ở trên là đủ có thể đọc được. Tuy nhiên, một khi bạn bắt đầu sử dụng một số tham số và chuỗi dài hơn, mã của bạn sẽ nhanh chóng trở nên dễ đọc hơn nhiều. Mọi thứ đang bắt đầu trông hơi lộn xộn rồi: >>>
Thật không may, loại định dạng này không phải là tuyệt vời bởi vì nó là dài dòng và dẫn đến lỗi, như không hiển thị chính xác các bộ dữ liệu hoặc từ điển. May mắn thay, có những ngày tươi sáng phía trước. Tùy chọn #2: str.format ()Cách hoàn thành công việc mới hơn này đã được giới thiệu trong Python 2.6. Bạn có thể kiểm tra hướng dẫn về các kỹ thuật định dạng chuỗi Python mới hơn để biết thêm thông tin. Cách sử dụng str.format ()Right Aligned Text26 là một cải tiến về %-formatting. Nó sử dụng cú pháp cuộc gọi chức năng bình thường và có thể mở rộng thông qua phương thức Right Aligned Text30 trên đối tượng được chuyển đổi thành một chuỗi. Với Right Aligned Text26, các trường thay thế được đánh dấu bằng niềng răng xoăn:
>>>
Bạn có thể tham chiếu các biến theo bất kỳ thứ tự nào bằng cách tham chiếu chỉ mục của họ: >>>
Nhưng nếu bạn chèn các tên biến, bạn sẽ có thêm perk về việc có thể truyền các đối tượng và sau đó tham chiếu tham chiếu và phương thức ở giữa niềng răng: >>> Right Aligned Text0 Bạn cũng có thể sử dụng Right Aligned Text32 để thực hiện thủ thuật gọn gàng này với từ điển: >>> Right Aligned Text1 Right Aligned Text26 chắc chắn là một bản nâng cấp khi so sánh với %hình thức, nhưng nó không phải là tất cả hoa hồng và ánh nắng mặt trời. Tại sao str.format () isn tuyệt vờiMã sử dụng Right Aligned Text26 dễ đọc hơn nhiều so với mã sử dụng %-formatting, nhưng Right Aligned Text26 vẫn có thể khá dài dòng khi bạn đang xử lý nhiều tham số và chuỗi dài hơn. Hãy xem này: >>> Right Aligned Text2 Nếu bạn có các biến bạn muốn chuyển sang Right Aligned Text36 trong từ điển, thì bạn có thể giải nén nó bằng Right Aligned Text37 và tham khảo các giá trị bằng khóa trong chuỗi, nhưng phải có một cách tốt hơn để làm điều này. F-Strings: Một cách mới và được cải tiến để định dạng chuỗi trong PythonTin tốt là F-Strings ở đây để cứu ngày. Họ cắt lát! Họ xúc xắc! Họ làm khoai tây chiên Julienne! Được rồi, họ không làm những điều đó, nhưng họ làm cho định dạng dễ dàng hơn. Họ tham gia bữa tiệc trong Python 3.6. Bạn có thể đọc tất cả về nó trong PEP 498, được viết bởi Eric V. Smith vào tháng 8 năm 2015. Còn được gọi là các chuỗi chữ được định dạng trên mạng, các chuỗi F F là các chữ cái có chữ Right Aligned Text38 ở đầu và niềng răng xoăn có chứa các biểu thức sẽ được thay thế bằng các giá trị của chúng. Các biểu thức được đánh giá trong thời gian chạy và sau đó được định dạng bằng giao thức Right Aligned Text39. Như mọi khi, các tài liệu Python là bạn của bạn khi bạn muốn tìm hiểu thêm. Dưới đây là một số cách mà F-String có thể làm cho cuộc sống của bạn dễ dàng hơn. Cú pháp đơn giảnCú pháp tương tự như cái bạn đã sử dụng với Right Aligned Text26 nhưng ít dài dòng hơn. Nhìn vào cách dễ đọc này: >>> Right Aligned Text3 Nó cũng sẽ có hiệu lực khi sử dụng một chữ cái viết hoa Right Aligned Text41: >>> Right Aligned Text4 Bạn có yêu F-String chưa? Tôi hy vọng rằng, vào cuối bài viết này, bạn sẽ trả lời Right Aligned Text42. Biểu thức tùy ýBởi vì các chuỗi F được đánh giá trong thời gian chạy, bạn có thể đặt bất kỳ và tất cả các biểu thức python hợp lệ trong chúng. Điều này cho phép bạn làm một số điều tiện lợi. Bạn có thể làm một cái gì đó khá đơn giản, như thế này: Nhưng bạn cũng có thể gọi các chức năng. Đây là một ví dụ: >>> Right Aligned Text5 Bạn cũng có tùy chọn gọi trực tiếp một phương thức: >>> Right Aligned Text6 Bạn thậm chí có thể sử dụng các đối tượng được tạo từ các lớp có chuỗi F. Hãy tưởng tượng bạn đã có lớp học sau: Right Aligned Text7 Bạn có thể làm điều này: >>> Right Aligned Text8 Các phương thức Right Aligned Text43 và Right Aligned Text44 đối phó với cách các đối tượng được trình bày dưới dạng chuỗi, vì vậy bạn sẽ cần đảm bảo rằng bạn bao gồm ít nhất một trong các phương thức đó trong định nghĩa lớp của bạn. Nếu bạn phải chọn một, hãy đi với Right Aligned Text44 vì nó có thể được sử dụng thay cho Right Aligned Text43. Chuỗi được trả về bởi Right Aligned Text43 là biểu diễn chuỗi không chính thức của một đối tượng và có thể đọc được. Chuỗi được trả về bởi Right Aligned Text44 là đại diện chính thức và nên không rõ ràng. Gọi Right Aligned Text49 và Right Aligned Text50 tốt hơn là sử dụng trực tiếp Right Aligned Text43 và Right Aligned Text44. Theo mặc định, các chuỗi F sẽ sử dụng Right Aligned Text43, nhưng bạn có thể đảm bảo rằng họ sử dụng Right Aligned Text44 nếu bạn bao gồm cờ chuyển đổi Right Aligned Text55: >>> Right Aligned Text9 Nếu bạn muốn đọc một số cuộc trò chuyện dẫn đến các chuỗi F hỗ trợ các biểu thức python đầy đủ, bạn có thể làm như vậy ở đây. Multiline F-StringBạn có thể có chuỗi đa dòng: >>> Centered0 Nhưng hãy nhớ rằng bạn cần đặt một Right Aligned Text38 trước mỗi dòng của một chuỗi đa dòng. Mã sau đây đã giành được công việc: >>> Centered1 Nếu bạn không đặt một Right Aligned Text38 trước mỗi dòng riêng lẻ, thì bạn sẽ có các chuỗi thường xuyên, cũ, trong vườn và không sáng bóng, mới, Fancy F-String. Nếu bạn muốn lan truyền các chuỗi trên nhiều dòng, bạn cũng có tùy chọn thoát khỏi sự trở lại với Right Aligned Text58: >>> Centered2 Nhưng đây là những gì sẽ xảy ra nếu bạn sử dụng Right Aligned Text59: >>> Centered3 Đọc về hướng dẫn thụt vào trong PEP 8. Tốc độ, vận tốcRight Aligned Text38 trong F-String cũng có thể đứng cho Fast Fast. Các chuỗi F nhanh hơn cả %-formatting và Right Aligned Text26. Như bạn đã thấy, các chuỗi F là các biểu thức được đánh giá trong thời gian chạy thay vì các giá trị không đổi. Ở đây, một đoạn trích từ các tài liệu:
Trong thời gian chạy, biểu thức bên trong niềng răng xoăn được đánh giá trong phạm vi riêng của nó và sau đó đặt cùng với phần theo nghĩa đen của chuỗi F. Chuỗi kết quả sau đó được trả về. Đó là tất cả những gì nó cần. Ở đây, một so sánh tốc độ: >>> Centered4 >>> Centered5 >>> Centered6 Như bạn có thể thấy, F-String xuất hiện trên đầu. Tuy nhiên, đó không phải là trường hợp luôn như vậy. Khi chúng được thực hiện lần đầu tiên, họ có một số vấn đề về tốc độ và cần được thực hiện nhanh hơn Right Aligned Text26. Một opcode Right Aligned Text64 đặc biệt đã được giới thiệu. Python F-Strings: Các chi tiết phiền phứcBây giờ bạn đã học được tất cả về lý do tại sao F-String lại tuyệt vời, tôi chắc chắn bạn muốn ra khỏi đó và bắt đầu sử dụng chúng. Dưới đây là một vài chi tiết cần ghi nhớ khi bạn mạo hiểm vào thế giới mới dũng cảm này. Dấu ngoặc képBạn có thể sử dụng các loại dấu ngoặc kép khác nhau bên trong các biểu thức. Chỉ cần đảm bảo rằng bạn không sử dụng cùng một loại dấu ngoặc kép ở bên ngoài chuỗi F như bạn đang sử dụng trong biểu thức. Mã này sẽ hoạt động: >>> Centered7 Như bạn có thể thấy, F-String xuất hiện trên đầu. >>> Centered8 Như bạn có thể thấy, F-String xuất hiện trên đầu. >>> Centered9 >>> Left Text Centered Text Right Text0 Như bạn có thể thấy, F-String xuất hiện trên đầu. >>> Left Text Centered Text Right Text1 Như bạn có thể thấy, F-String xuất hiện trên đầu.Tuy nhiên, đó không phải là trường hợp luôn như vậy. Khi chúng được thực hiện lần đầu tiên, họ có một số vấn đề về tốc độ và cần được thực hiện nhanh hơn Right Aligned Text26. Một opcode Right Aligned Text64 đặc biệt đã được giới thiệu. Python F-Strings: Các chi tiết phiền phức >>> Left Text Centered Text Right Text2 Bây giờ bạn đã học được tất cả về lý do tại sao F-String lại tuyệt vời, tôi chắc chắn bạn muốn ra khỏi đó và bắt đầu sử dụng chúng. Dưới đây là một vài chi tiết cần ghi nhớ khi bạn mạo hiểm vào thế giới mới dũng cảm này. >>> Left Text Centered Text Right Text3 Dấu ngoặc kép Bạn có thể sử dụng các loại dấu ngoặc kép khác nhau bên trong các biểu thức. Chỉ cần đảm bảo rằng bạn không sử dụng cùng một loại dấu ngoặc kép ở bên ngoài chuỗi F như bạn đang sử dụng trong biểu thức.Mã này sẽ hoạt động: >>> Left Text Centered Text Right Text4 Mã này cũng sẽ hoạt động: >>> Left Text Centered Text Right Text5 Bạn cũng có thể sử dụng Triple Trích dẫn: >>> Left Text Centered Text Right Text6 Nếu bạn thấy bạn cần sử dụng cùng một loại dấu ngoặc kép ở cả bên trong và bên ngoài chuỗi, thì bạn có thể thoát với Right Aligned Text58:Từ điển >>> Left Text Centered Text Right Text7 Nói về dấu ngoặc kép, coi chừng khi bạn đang làm việc với từ điển. Nếu bạn định sử dụng các dấu ngoặc kép cho các khóa của từ điển, thì hãy nhớ đảm bảo rằng bạn sử dụng dấu ngoặc kép cho các chuỗi F có chứa các phím. >>> Left Text Centered Text Right Text8 Điều này sẽ hoạt động:Nhưng đây sẽ là một mớ hỗn độn nóng với lỗi cú pháp: Nếu bạn sử dụng cùng một loại dấu ngoặc kép xung quanh các khóa từ điển như bạn làm ở bên ngoài chuỗi F, thì dấu ngoặc kép ở đầu khóa từ điển đầu tiên sẽ được hiểu là kết thúc của chuỗi. Niềng răngĐể làm cho nẹp xuất hiện trong chuỗi của bạn, bạn phải sử dụng niềng răng đôi: Lưu ý rằng sử dụng niềng răng ba sẽ dẫn đến việc chỉ có niềng răng đơn trong chuỗi của bạn:
Như bạn đã thấy trước đó, bạn có thể sử dụng dấu gạch chéo ngược trong phần chuỗi của chuỗi F. Tuy nhiên, bạn có thể sử dụng các dấu gạch chéo ngược để thoát khỏi phần biểu thức của chuỗi F: |