Ryan,
You can use godaddy hosting, Host Gator, IX webhosting, there's tons of hosts..
Once you've decided on hosting, they will give you their DNS (Nameserver settings)
To use your domain from google to load your site, you will log into where you manage your domain you bought from google and change the nameservers to point to your current host.
Once you decide on your host, you will have FTP access, so you can put all your HTML, PHP, and other files on it. If you're using a database, you can also import your data and settings as long as they support your framework. MYSQL is probably the most common, but a lot of them support Wordpress, Joomla, and other frameworks. I'm not sure about Flask, however, but that's something you can ask the hosting provider.
I'm unsure how this works with Google as of late, but I know for one of my businesses Google didn't offer hosting unless you used their crappy "google app site-builder" or something like that. HOWEVER, if you sign up with certain web hosting companies, a good bit of them will actually give you a free domain name for the first year. If it's a yourwebsite.googlesites.com that your using right now, I would definitely take advantage of the free domain so you can make it "yourwebsite.com" and look more official.
It's kind of confusing the first time you do it, but most companies have support which will help you out. (I know the hosts I just mentioned do)
Good luck