diff --git a/lab2.py b/lab2.py
new file mode 100644
index 0000000000000000000000000000000000000000..a21abaa6467aa1fd0ea970b40c36ec99194a343b
--- /dev/null
+++ b/lab2.py
@@ -0,0 +1,41 @@
+def analyzer(line):
+    dict = {
+        "OP": ["+","-","*"],
+        "DIV": "div",
+        "MOD": "mod",
+        "LPAR": "(",
+        "RPAR": ")",
+        "SEMICOLON":";",
+        }
+    for i in line:
+        if i == "//":
+            break
+        elif i.isnumeric():
+            print("NUM:"+i)
+        elif i not in ["+","-","*","div","mod","(",")",";"] and isinstance(i,str):
+            print("ID: "+i)
+        else:
+            for key,val in dict.items():
+                if i in val:
+                    if i in ["div","mod","(",")",";"]:
+                        print(key)
+                    else:
+                        print(key+":"+i)
+        
+
+def valid(line):
+    st = line.replace("(","( ")
+    st = st.replace(")"," ) ")
+    st = st.replace("-","- ")
+    check = st.split(" ")
+    check = [item for item in check if item != '']
+    return check
+
+
+file = open('file.txt', 'r')
+
+Lines = file.readlines()
+for l in Lines:
+    line = valid(l)
+    analyzer(line)
+file.close()
\ No newline at end of file