I was going to buy some EOS tokens on binance to familiarize myself with whole EOS idea. How many tokens would I need?
The amount of EOS you need to develop smart contracts is zero.
You can run EOS locally on your computer.
See Setting up Local Environment here:
In your local, isolated, EOS you have all the money.
EOS is only needed when it comes time to deploy and run smart contracts in mainnet.
It depends. The transaction is zero fee so you can build and submit your transaction which includes smart-contract for free.
However for your users to use your smart contract which is created and owned by your account the entire eco-system will allocate bandwidth and RAM base on the amount of EOS.
EOS does not work like ETH where you burn gas to process something on-chain. In order to make api-like calls to your contract, you need to stake EOS tokens. Stake in this sense means to lock them up. You can unstake them. That process lasts 3 days and your tokens are returned and ready to transfer in a lump some after that.
So, essentially, if you've got a decent grasp on C++ you can launch your own node, create a few accounts and wallets so you can issue your token via the contract as well as test other commands and functions.
In summary, you're really not spending EOS to guarantee the bandwith/cpu for the block producers to process your contract's activity, you just need to lock it up and if you need it back, you can get it back in a lump some after 3 days of waiting.
If it's just fiddling with EOS and it's smart contracts you can simply do it for free on your own Single node test net or you can even connect to the Jungle testnet where you are given 100 EOS allowing you to deploy contracts and do whatever.
It's a bit hard to say EXACTLY what you'll need for the main net but I'd say it would be a pretty small amount especially with EOS's fractional reserve system.
If you're looking to deploy a few contracts for learning, I recommend EOSDocs.io