Page 53 - Em Học Python
P. 53

dùng bao nhiêu ngoặc đơn ngoặc kép gì trong chuỗi cũng được (miễn là đừng có dùng ba

               dấu ngoặc đơn trong đó). Đây là phiên bản ngon lành của chuỗi lúc nãy:


                                 ​
               silly_string = '''He said, "Aren't can't shouldn't wouldn't."'''
                       À khoan, còn cái này nữa. Nếu thực sự chỉ

               muốn dùng ngoặc đơn hoặc ngoặc kép để bọc

               chuỗi trong Python thay vì ba dấu ngoặc kia, em

               có thể dùng dấu gạch ngược ( \) trước mỗi dấu
                                               ​
               ngoặc bị trùng bên trong chuỗi. Việc này gọi là

               thoát ra ⟨escape⟩. Đây là cách để ta nói với Python
                        ​
                                 ​
               rằng “OK, tôi biết trong chuỗi của tôi có ngoặc bị

               trùng rồi, đề nghị anh bỏ qua cho tới khi anh nhìn
               thấy dấu đóng ngoặc thật sự nhá.”


                       Việc viết thêm các ký tự thoát vào có thể khiến cho chuỗi trở nên khó đọc hơn, nên

               dùng chuỗi nhiều dòng phần nào đó ổn hơn. Nhưng biết đâu về sau em lại gặp những đoạn

               code có dùng ký tự thoát, cho nên dù sao đi nữa, hiểu ý nghĩa của mấy cái dấu gạch ngược
               này vẫn hơn nhỉ.


                       Đây là vài ví dụ về ký tự thoát:


                                           ​
                   ​
               >>> single_quote_str = 'He said, "Aren\'t can\'t shouldn\'t wouldn\'t."'
                   ​
               >>> double_quote_str = "He said, \"Aren't can't shouldn't wouldn't.\""
                                           ​
               >>> print(single_quote_str)
                    ​
                   ​
                          ​
               He said, "Aren't can't shouldn't wouldn't."
               >>> print(double_quote_str)
                          ​
                    ​
                   ​
               He said, "Aren't can't shouldn't wouldn't."
                       Đầu tiên ở ❶, ta tạo ra một chuỗi bằng ngoặc đơn, sử dụng dấu gạch ngược để thoát
               khỏi các ngoặc đơn khác bên trong chuỗi. Sau đó ở ❷, ta tạo ra một chuỗi khác bằng dấu

               ngoặc kép và sử dụng dấu gạch ngược để thoát khỏi các ngoặc kép khác bên trong chuỗi.

               Dòng cuối cùng ta in các biến vừa được tạo. Em có thể thấy là mấy dấu gạch ngược này

               hoàn toàn vô hình lúc in nhé.



                                                                                   Chuỗi, mảng, tuple và map           27
   48   49   50   51   52   53   54   55   56   57   58