You're locked out of your account and you don't have a phone with you to receive the verification code. What do you do?
The first time I got locked out of my email account -- because I'd ingeniously decided to turn on two-factor authentication -- was when I was in Barcelona. I was surrounded by Wi-Fi, but I didn't have a phone on me. And my email login page was asking me for a verification code that, for security purposes, could only be sent via text message or phone call.
Naturally, I was panicking -- this was a work trip, and I couldn't access my work email. But after a few minutes of freaking out, I calmed down, figured out how to circumvent the whole "needs to have a phone" issue, and promptly disabled two-factor authentication on all of my accounts (not that you should do this -- you should not, two-factor authentication is an important step in making your accounts secure). Here's how to use phone-based two-factor authentication when you don't have a phone.
You probably didn't know this, but Verizon has a universal messaging system similar to iMessage that lets you send and receive texts from any device -- including your PC (there's even a desktop app you can download).
To turn this service on, log in to your Verizon account and go to MY PLAN & SERVICES > SEND A MESSAGE.
You'll see a splash page for Verizon Messages. Accept the Terms and Conditions and click Continue.
You will now see a toolbox where you can send and receive messages. You'll see only new messages (not older messages stored on your device), and iMessages won't show up. But you should have no problem using your U.S. phone number to receive a two-factor authentication verification code via text.
AT&T also has a universal messaging service called AT&T Messages that lets you send and receive text messages through messages.att.net.
If you can't check your text messages online, you'll need to go another route. Luckily, there's an easy one -- so long as you're not trying to get into your Gmail account with two-factor authentication: Google Voice.
Google Voice gives you a free U.S. phone number that you can use to receive text messages online. Simply ask the service you're trying to get into to send a text message to your Google Voice number, sign into your Google Voice account, and the text will appear in your Inbox. For obvious reasons, you shouldn't use your Google Voice number as your two-factor authentication number for any Google accounts...because you may not be able to sign in to Google Voice without first verifying your identity (via Google Voice).