Hướng dẫn dùng python parsers python
Một số công việc cơ bản sẽ làm: Show PRINT:
VARIABLES:
Giới thiệuPhân tích cú pháp (tiếng Anh: parsing, syntax analysis, hoặc syntactic analysis) là một quá trình phân tích một chuỗi các biểu tượng, sử dụng trong ngôn ngữ tự nhiên, ngôn ngữ máy tính và các cấu trúc dữ liệu, tuân theo các quy tắc của ngữ pháp hình thức (formal grammar). Xây dựng cây phân tích cú pháp là 1 trong những giai đoạn đầu của việc thiết kế trình biên dịch. Cú pháp cơ bảnTên biếnTên biến bắt đầu bằng kí tự VD:
Chú thíchSử dụng kí tự # hoặc ~~~ ~~~ để chú thích chỉ thị trình biên dịch bỏ qua không phân tích cú pháp Lệnh gán
Lệnh PRINTLệnh này được dùng để in giá trị của biến, của biểu thức (số và chuỗi ký tự) ra tập tin, màn hình, máy in...
Lệnh IF
LỆNH FOR
LỆNH WHILE
Vòng lặp while được định nghĩa bởi từ khóa while. Một khi vòng lặp while được thực thi, biểu thức điều kiện trong while sẽ được đánh giá. Nếu biểu thức điều kiện cho giá trị đúng, các câu lệnh trong khối lệnh của vòng lặp while sẽ được thực thi. LỆNH BREAK VÀ CONTINUETrong vòng lặp, lệnh Một vòng lặp đang thực hiện nếu gặp lệnh Còn nếu một vòng lặp đang chạy mà gặp lệnh Viết codeTrước khi phân tích ngữ nghĩa của code, thì trình biên dịch phải nhận dạng kí tự trong file
Kí tự Khi xây dựng mọi parser của mọi ngôn ngữ lập trình đều phải chuyển về dạng mảng để xử lý chuỗi.
Trong python hàm list(data) có tác dụng chuyển đổi data của một biến sang dạng list. VD:
Kết quả:
Sau khi đã chuyển tất cả các kí tự trong file về dạng mảng thì tiếp theo ta xây dựng trình phân tích từ vựng. Các nhiệm vụ của quá trình phân tích từ vựng gồm:
Sau khi đã xử lý dãy dữ liệu mảng chuỗi được đọc trong file code thành 1 mảng các kí hiệu được biên dịch trong trình biên dịch Python thành dữ liệu có thể đọc được bởi con người để hiển thị ra màn hình thì ta thêm đoạn code xây dựng trình phân tích cú pháp. Nó là một trình biên dịch hoặc thông dịch các thành phần code sang ngôn ngữ khác. Trình phân tích cú pháp xây dựng cấu trúc dữ liệu dựa trên các mã token của lexer. Cấu trúc dữ liệu này sau đó có thể được sử dụng bởi trình biên dịch, trình thông dịch hoặc trình dịch để tạo một chương trình hoặc thư viện thực thi.
Để in các chuỗi, số, và kết quả của biểu thức thì có thể dùng hàm
Để in kết quả của một biến dữ liệu
Để gán giá trị của một biến dữ liệu hoặc biểu thức này cho một biến dữ liệu khác thì có thể dùng hàm
Để hiểu hơn thì ta có thể đọc full source code đơn giản của lexer và parser: |