To start, pick a program you want to build. Start small, calculator or tic tac toe or something. Languages are sandboxes with little structure other than "you can build shit with these tools". If you don't have a project, programming doesn't make sense. You can't "learn python" outside of the general language, but you can learn "how to build X with python". Keep that in mind. You aren't learning a language, you are learning how to do something using a language. No project, nothing to learn.
Learn the basic syntax if you're a complete noob (variables, functions, dictionaries, hello world program, etc.)
Start building your basic program. Google everything until you get the program finished. Get comfortable googling everything all the time. I work in machine learning for drug discovery and do a lot of classification/ML apps, and I still google shit every day, even shit like "how to access certain index in a data table" or "how to read in a csv file" (I work in multiple languages and always forget the syntax for which-is-which). It's just part of the job.
When you start getting a basic handle on shit, figure out what you actually want to do with the language. Data analysis/Machine learning? Learn basic stats ASAP. (ignore anyone who thinks you need a DEEP understanding of ML to start, you don't. You can build ML applications with the bare-minimum knowledge) Go straight to Kaggle and look at all the notebooks/datasets. Drink from that firehose for a while. Participate in current challenged, look at the forums, read what people are doing and why. Learn all the different classifiers (CART, SVM, NN with theano or something, etc). As a tip, you don't need more than SVMs or CART for the most part kek. SVM for binary, CART for everything else is basically 90% of work done. deep NN is fun to build, and may outperform CARTs, but unnecessary in most applications.