program to create a doubly linked list from a ternary tree

class Node:    

    def __init__(self,data):    

        self.data = data;    

        self.left = None;    

        self.middle = None;    

        self.right = None;    

class TernaryTreeToDLL:    

    def __init__(self):    

        self.root = None;    

        self.head = None;    

        self.tail = None;    

    def convertTernaryToDLL(self, node):    

        if(node == None):    

            return;    

        left = node.left;    

        middle = node.middle;    

        right = node.right;    

        if(self.head == None):    

            self.head = self.tail = node;    

            node.middle = None;    

            self.head.left = None;    

            self.tail.right = None;    

        else:    

            self.tail.right = node;    

            node.left = self.tail;    

            node.middle = None;    

            self.tail = node;    

            self.tail.right = None;    

        self.convertTernaryToDLL(left);    

        self.convertTernaryToDLL(middle);    

        self.convertTernaryToDLL(right);        

    def displayDLL(self):    

        current = self.head;    

        if(self.head == None):    

            print("List is empty");    

            return;    

        print("Nodes of generated doubly linked list: ");    

        while(current != None):    

            print(current.data),    

            current = current.right;    

tree = TernaryTreeToDLL();    

tree.root = Node(5);    

tree.root.left = Node(10);    

tree.root.middle = Node(12);    

tree.root.right = Node(15);    

tree.root.left.left = Node(20);    

tree.root.left.middle = Node(40);    

tree.root.left.right = Node(50);    

tree.root.middle.left = Node(24);    

tree.root.middle.middle = Node(36);    

tree.root.middle.right = Node(48);    

tree.root.right.left = Node(30);    

tree.root.right.middle = Node(45);    

tree.root.right.right = Node(60);    


tree.convertTernaryToDLL(tree.root);    

     

tree.displayDLL();

Program to write numbers 1 to 100 in a file

class File:

    def Create_file(self,fname):

        file = open(fname , 'w+')

        file.close()

        print("File Created as '{}'Successfully!\n".format(fname))


    def write_1__to_100(self,fname):

        try:

            fp = open(fname , 'w')

            for i in range(1,101):

                fp.write(str(i)+'\t')

            fp.close()

            print("\n Numbers written Successfully!")


        except FileNotFoundError:

            print('File not found')

if __name__ == '__main__':

    obj = File()

    k = 'C'

    while k=='C':

        ch = int(input("1.Create a File \n2.Write numbers 1 to 100 in file\nAny other key to Exit\n"))

        if ch==1:

            fname = input('Enter File name:')

            obj.Create_file(fname)

        elif ch==2:

            fname = input('Enter File name:')

            obj.write_1__to_100(fname)

        else:

            exit(0)

        k = input("Press 'C' to continue Other Key to exit:")

        print('\n')

else:

    pass