資源簡介
編譯原理語法分析器的Python實現-LL1文法,屬于編譯原理課程相關作業。輸出結果保存為csv文件,直觀了解分析全過程
代碼片段和文件信息
#?-*-?coding:?utf-8?-*-
#?@File??:?LL(1).py
#?@Author:?Judong?Li
#?@Date??:?2020/05/23
#?@Desc??:?編譯原理——LL1語法分析器
import?csv
class?Stack(object):
????“““棧“““
????def?__init__(self):
?????????self.items?=?[]
????def?is_empty(self):
????????“““判斷是否為空“““
????????return?self.items?==?[]
????def?push(self?item):
????????“““加入元素“““
????????self.items.append(item)
????def?pop(self):
????????“““彈出元素“““
????????return?self.items.pop()
????def?peek(self):
????????“““返回棧頂元素“““
????????return?self.items[len(self.items)-1]
????def?size(self):
????????“““返回棧的大小“““
????????return?len(self.items)
????def?show(self):
????????print(self.items)
class?LL1_Analyzer:
????def?__init__(self):
????????self.SymbolStack=Stack()
????????#終結符/非終結符
????????self.Endsymbol=[]
???????
- 上一篇:Python寫的坦克大戰
- 下一篇:實現chi、ig、mi計算python
評論
共有 條評論