所以我看了类似的问题,我仍然遇到同样的问题,无法弄清楚.对于这个编程任务,我正在为Clite词典的一小部分创建一个简化版本的词法分析.我正在从输入文件中提取标记,输出我的分析结果.我正在使用字典为标识符创建一个符号表.当我在不同的行上找到相同的标识符时,我需要在符号表中附加它所在的行.例如,我在第2行和第7行找到标识符"number18".因此符号表需要从{number18:2}到{number18:2,7}
当我尝试将新行号附加到当前字典条目时出现问题.我在问题标题中发布了错误.到目前为止,这是我的代码
y = 0
s2 = ()
stable = dict()
for line in open("Sample.txt","r"):
x1 = ''
for char in line:
if char.isalpha():
x1 = x1 + char
elif char.isdigit():
x1 = x1 + char
elif char == '.':
x1 = x1 + char
elif x1 != '':
break
#print (x1)
if (x1 == "for" or x1 == "bool" or x1 == "char" or x1 == "else" or x1 == "false" or x1 == "float" or x1 == "if" …Run Code Online (Sandbox Code Playgroud)