I'm making an small audio editor interface, it needs to have a dialog box with 3-4 button options along with activate option, when the user clicks on activate,another dialog box will be popped asking him for his Mac address and a code, i heard Visual basic is good for making .exe but does it give me full control over the application?
You have to think about where your strengths lie.  If you are a strong Python coder then go in that direction.  if you are a strong VB coder then go in that direction.   I would argue that neither of the options you are thinking of using would be ideal.  
I would actually recommend C# within Visual Studio 2015 community.   Python isn't natively compiled to an EXE and there are more hoops to jump though to get a compiled executable. 
Recently I used C# and Visual Studio 2015 community to create myself a similar small GUI interface for the work I was doing.    I have previously used Python with QT.  The extra hoops I had to work through to get an EXE from python definatly made the choice of python at the time a downside. 
C# has a large amount of libraries available for it using the NUGET libraries in Visual Studio.   VB is quite dated (but still quite usable) compare to C#. 
Python also has a large number of currently supported opensource libaries.
Which is Easier to create an .exe file ,Vb or python with tkinter?