Much of my programming background is in Java, and I'm still doing most of my programming in Java. However, I'm starting to learn Python for some side projects at work, and I'd like to learn it as independent of my Java background as possible - i.e. I don't want to just program Java in Python. What are some things I should look out for?
A quick example - when looking through the Python tutorial, I came across the fact that defaulted mutable parameters of a function (such as a list) are persisted (remembered from call to call). This was counter-intuitive to me as a Java programmer and hard to get my head around. (See here and here if you don't understand the example.)
Someone also provided me with this list, which I found helpful, but short. Anyone have any other examples of how a Java programmer might tend to misuse Python...? Or things a Java programmer would falsely assume or have trouble understanding?
Edit: Ok, a brief overview of the reasons addressed by the article I linked to to prevent duplicates in the answers (as suggested by Bill the Lizard). (Please let me know if I make a mistake in phrasing, I've only just started with Python so I may not understand all the concepts fully. And a disclaimer - these are going to be very brief, so if you don't understand what it's getting at check out the link.)
(And if you find this question at all interesting, check out the link anyway. :) It's quite good.)
Apart from all the other advantages, it is always beneficial to command multiple programming languages. Therefore, if you are a Java programmer, who is looking forward to learning a new language, now is the right time to learn Python.
Java and Python are two of the most popular programming languages. Of the two, Java is the faster language, but Python is simpler and easier to learn. Each is well-established, platform-independent, and part of a large, supportive community. But that is where the similarities end.
Java too provides an option for game development, but it's not as popular as Python in this domain. If you want to create some high-end graphics then Python is the best option for this as it provides you with all kinds of libraries and powerful engines. You can't develop a game entirely on Python or Java.
Just do this:
class Dog(object): def make_sound(self): return "woof!" class Cat(object): def make_sound(self): return "meow!" class LolCat(object): def make_sound(self): return "i can has cheezburger?"
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With