Why isn't Python the Programming Language for You?

Asked by Last Modified  

Follow 1
Answer

Please enter your answer

Python has notable strengths: clean, concise, readable syntaxrich librariestons of documentation and user supportPython also has notable weaknesses: It’s not as versatile as Java or C++. There are many areas where you simply cannot use Python.Python is among the slowest of the major programming...
read more
Python has notable strengths: clean, concise, readable syntaxrich librariestons of documentation and user supportPython also has notable weaknesses: It’s not as versatile as Java or C++. There are many areas where you simply cannot use Python.Python is among the slowest of the major programming languages in terms of execution speed.Python is hobbled by the GIL (global interpreter lock) for concurrent programming.Sometimes, you want or need hard static typing, not merely type annotations.Python has a stupid implementation of lambdas: you cannot have multiple lines!Python has just about the stupidest OOP implementation out there:You “hide” instance variables using underscores as a prefix, but they aren’t really hidden. You must always pass self (or whatever name you like) as the first argument to an instance method in its definition. But this is inconsistent with the actual method call signature! Example: class Die: def setSides(self, sides): # two args self.numSides = sides def main(): die1 = Die() die1.setSides(3) # one arg - WTF? You can have myList.append() but not myList.len(). You can use len(myList), though. WTF? Isn’t Python supposed to be object-oriented? Also, while Python’s Off-side rule syntax is highly praised, it’s also highly criticized. I much prefer Smalltalk (Pharo) over Python. Smalltalk is a much, much simpler and easier language than Python. I find Smalltalk more versatile than Python, too. Smalltalk is not hobbled by the GIL. Smalltalk has lovely lambdas. Smalltalk’s OOP implementation is as clean and pure as the driven snow. There is no better OOP language. read less
Comments

Related Questions

I want to conduct python classes for beginners online with minimal charges. Please advise the procedure.
Conducting online Python classes for beginners with minimal charges requires leveraging free tools for teaching, keeping overhead low, and focusing on high-value, hands-on learning. Here is the procedure to get started:
Profile Photo
Ramesh.k
How do apprachto an unknown problem to construct itssolution? Especially when do you face any programming challenge.
First approach your teacher or tutor about problem statement and ask for solution to get it solved.. Next practise similar kind of things by using other books or google or youtube help... If you u facing any challenges...
Profile Photo
Tanmoy Gupta
0 0
View Comments8
Which Python should I learn, Python 2.7 or 3.x?
Better to learn latest versions always. You cannot find much differences. If you learn one version remaining versions you can understand easily.
Profile Photo
Swapna
0 0
View Comments7

Now ask question in any of the 1000+ Categories, and get Answers from Tutors and Trainers on UrbanPro.com

Ask a Question

Related Lessons


Use IPython shell for better understanding of python
Hi All, Even though there are many editors like IDLE, PyDev, PyCharm are available for python, it is very advantageous to use ipython as an interactive shell for Pyhon. How to install it? pip install...
D

Deleted User

0 0
View Comments0

Steps of Execution of a Python Program
When we compile a Python program, the python compiler converts the Python source code into another code called byte code. Byte code is a fixed set of instructions that represent different types of operations....
Profile Photo

Code: Gantt Chart: Horizontal bar using matplotlib for tasks with Start Time and End Time
import pandas as pd from datetime import datetimeimport matplotlib.dates as datesimport matplotlib.pyplot as plt def gantt_chart(df_phase): # Now convert them to matplotlib's internal format... ...
R

Rishi B.

0 0
View Comments0

Python Script for random Password generation
from random import randintdef passwordgen(request): str_not_include = "1 L I i l o O 0" str_small ="abcdefghjkmnpqrstuvwxyz" str_caps = str_small.upper() str_num = "23456789" str_special...
Profile Photo

Recommended Articles

Python is one of the most popular programming languages in the world. It is general-purpose, object oriented, high-level programming language used in a number of programming fields. Python is a great programming language to learn as it will introduce you to the world of programming. If you are from the technical background...

Read full article >

Microsoft Excel is an electronic spreadsheet tool which is commonly used for financial and statistical data processing. It has been developed by Microsoft and forms a major component of the widely used Microsoft Office. From individual users to the top IT companies, Excel is used worldwide. Excel is one of the most important...

Read full article >

Almost all of us, inside the pocket, bag or on the table have a mobile phone, out of which 90% of us have a smartphone. The technology is advancing rapidly. When it comes to mobile phones, people today want much more than just making phone calls and playing games on the go. People now want instant access to all their business...

Read full article >

Software Development has been one of the most popular career trends since years. The reason behind this is the fact that software are being used almost everywhere today.  In all of our lives, from the morning’s alarm clock to the coffee maker, car, mobile phone, computer, ATM and in almost everything we use in our daily...

Read full article >

Looking for Python Training classes?

Learn from the Best Tutors on UrbanPro

Are you a Tutor or Training Institute?

Join UrbanPro Today to find students near you