issue
I am writing an application in python. It takes care of contacts and other information about a person. I want to prompt the user for a master key every time that he/she wants to perform a major operation. I have everything figured out. The whole application is ready and works well. But I store the master key in a file. This file is easily readable in the plain text form. And my friends who tried using this said that the software is useless if I don't apply a strong encryption algorithm as users would simply trust the application with the details that can be easily stolen.
goal
To store the master key in a form that can be deciphered (or read) only by my program. 
other things

there is an option for the user to change the master key.
The master key will be read and deciphered only once. At the start of the program. It will be stored in a variable then and and used from this variable. 
It is a GUI application. And I am using python Tkinter. 

details
Please note that the data is stored using another encryption that is not un breakable but enough for this kind of information. 
I have not used any database to store the information. 
The only data to be encrypted is a master key. It is an alphanumeric string of length anywhere from 7 to 80 characters. 
specs

1. Python 2.7
2. Tkinter 8.5
3. Linux Mint 14
You don't need, or even want, complex encryption for passwords--and what you are describing is a password, not a key (it just grants access, it doesn't encrypt the data). Current best practice is to store passwords salted and hashed.  That is, when the user creates a new account and enters a password, you build a string from the password plus user name plus a "salt" (which is just a small string that's the same for everyone on your site--this is to thwart rainbow table attacks). Then you run that string through a good hash algorithm--something like SHA1 is fine (even MD5 is more than adequate, despite reports to the contrary). You certainly don't need anything like AES.  Anyway, now that you have a hash, you store the hash in the database, and not the password. Even a strong cipher like AES is useless if don't do the rest right.
Next time the user logs in, you do the same: add his password to user name and salt, hash that, and compare the hash to what's stored. There's no way, even in principle, for you to know what his password was, so no way for an attacker to find it even if they get your database and know your algorithm and salt.
Encryption -- how to do it