Page 52 - Em Học Python
P. 52
Dòng cuối của IDLE giải thích đại khái em đang gặp lỗi gì – trong trường hợp này là
một lỗi cú pháp.
Thay bằng dấu ngoặc kép vào cũng không giải quyết được vấn đề gì:
>>> silly_string = "He said, "Aren't can't shouldn't wouldn't.""
SyntaxError: invalid syntax
Lần này, Python phát hiện ra một chuỗi được bọc bởi hai dấu ngoặc kép, chứa các
ký tự He said, (và một dấu cách). Tuốt tuồn tuột những thứ còn lại (tính từ Aren't trở đi)
chính là tác nhân gây lỗi:
Đó là do, dưới góc nhìn của Python, tất cả những gì thừa thãi đều không nên tồn tại.
Nó đi tìm dấu ngoặc tiếp theo để kết thúc chuỗi và hoàn toàn không hiểu em muốn nó làm
gì với mấy thứ hầm bà lằng nhằng sau dấu đóng ngoặc đó.
Giải pháp cho tình huống này là dùng chuỗi nhiều dòng mà ta vừa học được bằng
cách sử dụng ba dấu ngoặc đơn ( '''), như vậy, ta có thể kết hợp cả ngoặc đơn lẫn ngoặc
kép mà không gặp vấn đề gì. Đúng hơn là, một khi đã bọc bằng ba dấu ngoặc đơn, ta có thể
26 Chương 3