scary-code/02-cosmic-horror.py

32 lines
848 B
Python

import pickle
class Strack:
def __init__(self):
self.data = b""
self.indexes = "0"
self.index_indexes = "0"
def pop(self):
val = self.data[-int(self.indexes[-(int(self.index_indexes[-1])):]):]
self.data = self.data[:-int(self.indexes[-(int(self.index_indexes[-1])):])]
self.indexes = self.indexes[:-int(self.index_indexes[-1])]
self.index_indexes = self.index_indexes[:-1]
return pickle.loads(val)
def push(self, data):
data = pickle.dumps(data)
self.data += data
self.indexes += str(len(data))
self.index_indexes += str(len(str(len(data))))
if __name__ == "__main__":
strack = Strack()
strack.push(7)
strack.push("hello")
strack.push([1, 2, 3])
print(strack.pop())
print(strack.pop())
print(strack.pop())