I wanted to build a nested dictionary based on a text file. for example. (text.txt)
...
hostA           hostA.testing.com               192.168.1.101
hostB           hostB.testing.com               192.168.1.102
...
Ideally, I want to get the following nested dictionary
...
{'hostA': {'FQHN': 'hostA.testing.com', 'IP': '192.168.1.101'}, 'hostB': {'FQHN': 'hostB.testing.com', 'IP': '192.168.1.102'}}
...
So I made the following Python code:
myinnerdict={}
myouterdict={}
def main():
    my_fh = open('text.txt', 'r')
    for line in my_fh:
        newline = line.strip().split()    # get ride of the '\n' and make it a inner list .
        #print(newline)
        myinnerdict['FQHN']=newline[1]
        myinnerdict['IP']=newline[2]
        #print(myinnerdict)
        #print(newline[0])
        myouterdict[newline[0]]=myinnerdict
    print(myouterdict)
if __name__ == "__main__":
    main()
...
however, beyond my understanding , when I ran it I got this result:
...
{'hostA': {'FQHN': 'hostB.testing.com', 'IP': '192.168.1.102'}, 'hostB': {'FQHN': 'hostB.testing.com', 'IP': '192.168.1.102'}}
...
which is not what I wanted , I don't know what I missed, please kindly help.
 
     
     
    