I find this good for people that already know how to code in another language: www.pythoncheatsheet.org Answer from xelf on reddit.com
🌐
Reddit
reddit.com › r/learnpython › any good resources for an experienced java developer new to python?
r/learnpython on Reddit: Any good resources for an experienced Java developer new to Python?
January 13, 2022 -

Does anyone have any recommendations for material pitched a experienced developers wanting to get up-to-speed with Python quickly. Assume I can already read and write complex code in another language but have never used Python before.

🌐
Coursera
coursera.org › browse › computer science › software development
Introduction to Programming with Python and Java | Coursera
Course 1, 28 hoursCourse 1•28 hoursCourse details · Identify core aspects of programming and features of the Python language · Understand and apply core programming concepts like data structures, conditionals, loops, variables, and functions ...
Rating: 4.5 ​ - ​ 1.9K votes
Discussions

As a Java programmer learning Python, what should I look out for? - Stack Overflow
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 More on stackoverflow.com
🌐 stackoverflow.com
how to switch from java to python?
It isn't as hard as you might think. If you know java you know the core fundamentals of coding that are basically the same in every language. Once you know what you need to do, it's basically looking up syntax, libraries, etc. My advice is don't stress about it, take it slow. Python is actually pretty user friendly! More on reddit.com
🌐 r/learnpython
8
10
April 8, 2024
Should I switch to Python from Java
I am currently working on a project and I use Python with it. Out of all the Java projects I made, this one is the easiest to learn and understand. More on reddit.com
🌐 r/learnprogramming
38
38
April 23, 2024
Before moving from Java to Python, what does Python lack that Java has? ( Think about enterprise application)
Python has analogs for almost everything that Java has. There are some differences though. Off the top of my head: Obligatory OOP. Python classes are optional. Access modifiers. Python has no analogs for public/private/protected. All classes and methods are public. Although there are conventions governing 'private' methods, there is nothing stopping you from using them in a public context. Packages. Python does allow modules, but the Java 'package' concept is missing. Typing. Python has no compile-time type checking. You can freely mix types and change types of variables at runtime. I would strongly suggest you look up Python type hints and start using them from day one. It will greatly aid debugging. Abstract classes. Python has an ABC (abstract base class) module which does almost the same thing, but there are differences. Interfaces. No such thing in Python. Since Python allows multiple inheritance, interfaces can be simulated with abstract base classes. Generics. Since there is no compile-time type checking, the concept of generics doesn't really apply. Again, you can use type hints to document generics, but they won't be enforced. Lambdas. Python does have lambdas, but they are limited to single expressions, unlike the code blocks that Java allows. More on reddit.com
🌐 r/learnpython
93
40
June 6, 2024
People also ask

How much math do I need to know to take this Specialization?
The only math that learners will need for this Specialization is arithmetic and basic concepts in logic.
🌐
coursera.org
coursera.org › browse › computer science › software development
Introduction to Programming with Python and Java | Coursera
Is this course really 100% online? Do I need to attend any classes in person?
This course is completely online, so there’s no need to show up to a classroom in person. You can access your lectures, readings and assignments anytime and anywhere via the web or your mobile device.
🌐
coursera.org
coursera.org › browse › computer science › software development
Introduction to Programming with Python and Java | Coursera
Can I just enroll in a single course?
Yes! To get started, click the course card that interests you and enroll. You can enroll and complete the course to earn a shareable certificate. When you subscribe to a course that is part of a Specialization, you’re automatically subscribed to the full Specialization. Visit your learner dashboard to track your progress.
🌐
coursera.org
coursera.org › browse › computer science › software development
Introduction to Programming with Python and Java | Coursera
🌐
Runestone Academy
runestone.academy › ns › books › published › java4python › index.html
Welcome to Java for Python Programmers — Java for Python Programmers
Java for Python Programmers · Preface · Introduction · Why Learn another programming Language? Lets look at a Java Program · Java Data Types · Conditionals · Loops and Iteration · Defining Classes in Java · Naming Conventions · Common Mistakes · Java Documentation ·
🌐
Aryaboudaie
aryaboudaie.com › java › python › technical › educational › 2017 › 11 › 13 › python-for-java-programmers.html
Python for Java Programmers - Part 1 - The Big Picture — Learning Python as a Second Language » Arya Boudaie's Personal Site
November 13, 2017 - Instead, I will try to take another approach, by using what you already know to give you a head start into being a Python expert. In this guide, I’ll go through a list of all the topics you have learned in Java, and explain how you can do similar things in Python, as well as new tips and tricks to keep you learning!
🌐
O'Reilly Media
oreilly.com › videos › java-to-python › 9781789611960
Java to Python in 100 Easy Steps - The Fastest Way to Learn Python for Experienced Java Programmers [Video]
In this 7-hour course, you'll transition seamlessly from Java to Python, mastering the key Python programming concepts while building on your Java expertise. You'll learn object-oriented programming, work with Python's data structures, and develop ...
🌐
Medium
medium.com › @pabba.varun › learning-python-a-quick-guide-for-experienced-java-developers-e49403e295ef
Learning Python: A Quick Guide for Experienced Java Developers | by Pabba Varun Kumar | Medium
August 23, 2024 - Are you an experienced Java programmer looking to learn Python? If so, this article will help you start your Python journey with ease. All programming languages share similar logic but often differ in syntax. This guide will walk you through setting up your Python environment and getting started with writing Python code.
Find elsewhere
🌐
Udemy
udemy.com › development
Python for Beginners - Go from Java to Python in 100 Steps
May 4, 2023 - I’ve designed this Python Programming Masterclass just for you! This Beginner Python Programming Course takes an hands-on Step By Step Approach using more that 100 Code Examples.
Rating: 4.6 ​ - ​ 2.37K votes
🌐
DEV Community
dev.to › alli › what-happened-when-i-learned-java-and-python-at-the-same-time-1haa
What Happened When I Learned Java and Python at the Same Time - DEV Community
August 13, 2019 - I made it a 6-month goal to go through the first six chapters. That's how I ended up with two different programming books learning two different languages at the same time. And I was still coding primarily in JavaScript for my regular job. What was I thinking? I have no idea. Currently I've finished the first six chapters of the Java book and the Python book only has a few chapters left.
🌐
DEV Community
dev.to › claudiodavi › the-journey-from-java-to-python-5h1m
The Journey From Java to Python - DEV Community
June 11, 2019 - The slow but very rewarding transition from Java to Python. Tagged with java, python, career, beginners.
🌐
GitHub
github.com › blu3r4y › python-for-java-developers
GitHub - blu3r4y/python-for-java-developers: If you are a Java developer and want to get a quick glance at Python, this course is for you · GitHub
If you are a Java developer and want to get a quick glance at Python, this course is for you - blu3r4y/python-for-java-developers
Starred by 66 users
Forked by 13 users
Languages   Markdown 62.4% | Python 15.9% | Java 7.7% | HTML 4.5% | Jupyter Notebook 4.5% | CSS 2.5%
🌐
Penn Engineering
online.seas.upenn.edu › home › lifelong learning › on-demand learning › credentials › introduction to programming with python and java specialization
Introduction to Programming with Python and Java Specialization - Penn Engineering OnlinePenn Engineering Online
September 2, 2025 - Learn basic concepts in Python and move on to more complex subjects such as object-oriented programming and data structures in Java. This series of four courses prepares you to write fully functional programs in both Python and Java, two of the most frequently used programming languages in the world
🌐
Medium
medium.com › womenintechnology › journey-to-java-part-1-d8fa449db764
Journey to Java: Part 1. Learning Java as a Python Programming… | by Nisha Kaushal | Women in Technology | Medium
January 27, 2024 - Journey to Java: Part 1 Learning Java as a Python Programming Data Scientist Why Java, and Why Now? A while ago, when I was in undergrad at UC Riverside obtaining my Bachelor’s in Mathematics, I …
🌐
Real Python
realpython.com › java-vs-python
Java vs Python: Basic Python for Java Developers – Real Python
August 16, 2024 - This tutorial is for software developers who are familiar with Java’s inner workings, concepts, terminology, classes, types, collections framework, and so on. You don’t need to have any Python experience at all. Free Bonus: Click here to get a Python Cheat Sheet and learn the basics of Python 3, like working with data types, dictionaries, lists, and Python functions.
🌐
Jython
jython.org
Home | Jython
The Jython project provides implementations of Python in Java, providing to Python the benefits of running on the JVM and access to classes written in Java. The current release (a Jython 2.7.x) only supports Python 2 (sorry).
🌐
Medium
medium.com › data-science › rewiring-your-brain-from-python-to-java-383960580098
Rewiring Your Brain from Python to Java | by Dan Hales | TDS Archive | Medium
September 24, 2020 - Now that I’m working on a Java project again (a neural network package that is really pushing my understanding of the underlying math to its limits), I’m really paying attention to the little differences in how the languages work. In particular, I’ve been making notes about the places where standard Python habits can become huge roadblocks when traveling through Java. ... This post is directed at Python programmers (in particular, data scientists) traveling in the opposite lane; I’ll detail some of the initial conceptual hurdles you may face when learning to adapt your Python instincts to Java territory.
🌐
GitHub
github.com › in28minutes › java-to-python-in-100-steps
GitHub - in28minutes/java-to-python-in-100-steps: Learn Python using your Java Knowledge
Why not use your Java knowledge and help you learn Python by comparing and contrasting with Python? We take an hands-on approach using a combination of Python Shell and PyCharm as an IDE to illustrate more than 100 Python Coding Exercises, Puzzles and Code Examples.
Starred by 60 users
Forked by 79 users
Languages   Python 50.2% | Java 49.8% | Python 50.2% | Java 49.8%
🌐
Quora
quora.com › What-are-some-good-ways-for-a-Java-programmers-to-learn-Python
What are some good ways for a Java programmers to learn Python? - Quora
Answer (1 of 3): I am recommended the following method because this is what worked for me. It's, by no means, exhaustive. The Google's Python Class should be a good start. It teaches the core of the languages within 16 hours of lectures interspersed with lots of (good) exercises. Also, Nick Parl...
Top answer
1 of 7
26
  • Don't put everything into classes. Python's built-in list and dictionaries will take you far.
  • Don't worry about keeping one class per module. Divide modules by purpose, not by class.
  • Use inheritance for behavior, not interfaces. Don't create an "Animal" class for "Dog" and "Cat" to inherit from, just so you can have a generic "make_sound" method.

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?"
2 of 7
23

The referenced article has some good advice that can easily be misquoted and misunderstood. And some bad advice.

Leave Java behind. Start fresh. "do not trust your [Java-based] instincts". Saying things are "counter-intuitive" is a bad habit in any programming discipline. When learning a new language, start fresh, and drop your habits. Your intuition must be wrong.

Languages are different. Otherwise, they'd be the same language with different syntax, and there'd be simple translators. Because there are not simple translators, there's no simple mapping. That means that intuition is unhelpful and dangerous.

  • "A static method in Java does not translate to a Python classmethod." This kind of thing is really limited and unhelpful. Python has a staticmethod decorator. It also has a classmethod decorator, for which Java has no equivalent.

    This point, BTW, also included the much more helpful advice on not needlessly wrapping everything in a class. "The idiomatic translation of a Java static method is usually a module-level function".

  • The Java switch statement in Java can be implemented several ways. First, and foremost, it's usually an if elif elif elif construct. The article is unhelpful in this respect. If you're absolutely sure this is too slow (and can prove it) you can use a Python dictionary as a slightly faster mapping from value to block of code. Blindly translating switch to dictionary (without thinking) is really bad advice.

  • Don't use XML. Doesn't make sense when taken out of context. In context it means don't rely on XML to add flexibility. Java relies on describing stuff in XML; WSDL files, for example, repeat information that's obvious from inspecting the code. Python relies on introspection instead of restating everything in XML.

    But Python has excellent XML processing libraries. Several.

  • Getters and setters are not required in Python they way they're required in Java. First, you have better introspection in Python, so you don't need getters and setters to help make dynamic bean objects. (For that, you use collections.namedtuple).

    However, you have the property decorator which will bundle getters (and setters) into an attribute-like construct. The point is that Python prefers naked attributes; when necessary, we can bundle getters and setters to appear as if there's a simple attribute.

    Also, Python has descriptor classes if properties aren't sophisticated enough.

  • Code duplication is often a necessary evil in Java (e.g. method overloading), but not in Python. Correct. Python uses optional arguments instead of method overloading.

    The bullet point went on to talk about closure; that isn't as helpful as the simple advice to use default argument values wisely.

🌐
Medium
mirakl.tech › 10-pleasant-surprises-i-noticed-when-switching-to-python-95ebd8d103c1
Switching from Java to Python : 10 Concepts You Should Know About | by Mirakl Labs | Mirakl Tech Blog
October 19, 2022 - Python, a breath of fresh air that allows you to not write classes. What a relief since after Java forced me to declare a public class Main every time I wanted to poke something, Python is “Ok you want to test something, do it and we will give it a name later 😉”. It removes a barrier between your idea and your implementation.