SlideShare una empresa de Scribd logo
1 de 4
Descargar para leer sin conexión
Python – Most Powerful and Fastest Growing Language
Solanki Raviraj G.
Assistant Professor, Shree M.L.Kakadiya MCA mahila college, Amreli
---------------------------------------------------------------------***---------------------------------------------------------------------
Abstract: Python is a powerful high-level, object-oriented
programming language created by Guido van Rossum
during 1985- 1990. In this paper we first introduce you to
the python programming characteristics and features. This
paper also discusses about the reasons behind python
being credited as the most powerful and fastest growing
programming language. This paper features about the
characteristics and most important features of python
language, the types of programming supported by python
and its users and its applications.
1. INTRODUCTION
In this paper, we are going to introduce the run time
structure and characteristics of Python. Python is a
general-purpose, high-level programming language which
is widely used in the recent times. Its design philosophy
emphasizes code readability, and its syntax allows
programmers to express concepts in fewer lines of code
than would be possible in languages such as C. The
language constructs enable the user to write clear
programs on both a small and large scale
The most important feature in Python being it supports
multiple programming paradigms, including object-
oriented, imperative and functional programming or
procedural styles. Python supports a dynamic type system
and automatic memory management and has a large and
comprehensive standard library. Python interpreters are
available for many operating systems..
2. Python Run time structure
Actually all the complexities in running a python code is
deliberately hidden from the programmers. We type code
into text files, and run those files through the interpreter.
But something more is happening. The basic
understanding of the run time structure of python can
help to understand a detailed picture of program
execution.
[Python’s traditional runtime execution model: source
code you type is translated to byte code, which is then run
by the Python Virtual Machine. Your code is automatically
compiled, but then it is interpreted.]
First the python script is compiled to byte code and then
routed to a virtual machine.
Byte code compilation
Python first compiles the source code of the program to
“byte code“. Byte code is low level, platform independent
representation of the source code. Byte code runs more
quickly than the source code. Python does not need to
reanalyze and reparse each source statement repeatedly.
The net effect is that pure Python code runs at speeds
somewhere between those of a traditional compiled
language and a traditional interpreted language. Python
will store the byte code wit a .pyc (means compiled .py
source) extension. When we run the source code for the
second time, python will load the byte code, skips the
compilation step unless we have not change the code.
Python Virtual Machine (PVM)
Once your byte code is formed, then it is carried to python
virtual machine for execution. PVM is a big loop that
iterates through the byte code instructions, one by one to
carry out their operations. PVM is run time of engine of
python. It is the component that actually runs the code.
3. Is python better than java?
There are so many reasons but for better performance and
if we talk about the speed java is always the best choice.
Compiled code is almost always faster than interpreted
code.Java code is compiled by the java compiler, and then
executed by the JVM.But Python is interpreted.
So if you write a code for a single algorithm in python and
java, it’s very likely for java to be faster.
1. Java creates applications that work across
various platforms, while Python does not.
2. Java programs tend to run slower compared to
Python programs.
3. Java uses traditional braces to start and end
blocks, while Python uses indentation.
4. Java employs static typing, while Python is
dynamically typed.
5. Python is simpler and more compact compared
to Java.
Most programmers agree that Python is an easier
language for novice programmers to learn. You will
progress faster if you are learning Python as a first
language than Java. However, the popularity of Java means
that learning this powerful language is essential if you
want to develop apps for Android.
4. Characteristics of python:
Python is a well designed language that can be used for real
world programming. Python is a very high-level, dynamic,
object-oriented, general purpose programming language that
uses interpreter and can be used in a vast domain of
applications. Python was designed to be easy to understand
and use. Python is termed as a very user-friendly and
beginner-friendly language in the recent times. Python has
gained popularity for being a beginner-friendly language, and
it has replaced Java as the most popular introductory
language. As a dynamically typed language, Python is really
flexible. Furthermore, Python is also more forgiving of errors,
so you'll still be able to compile and run your program until
you hit the problematic part. Python is a flexible, simple
coding programming language. This language can support
different styles of programming including structural and
object-oriented. Other styles can be used, too. Python is very
flexible, because of its ability to use modular components that
were designed in other programming languages. For example,
you can write a program in C++ and import it to python as a
module. Then add something else to it (for example design a
GUI for it).
However, there are few drawbacks with python:
Not Easy to Maintain:
Because Python is a dynamically typed language, the same
thing can easily mean something different depending on
the context. As a Python app grows larger and more
complex, this may get difficult to maintain as errors will
become difficult to track down and fix, so it will take
experience and insight to know how to design your code
or write unit tests to ease maintainability.
Slow:
As a dynamically typed language, Python is slow because it
is too flexible and the machine would need to do a lot of
referencing to make sure what the definition of something
is, and this slows Python performance down.
5. Features of Python:
Python is simple
It is a very high-level language that has many sources for
learning. Python supports a wide variety of third party
tools which makes it much easier to to use and motivates
the users to continue with. Python has a very simple and
elegant syntax. It's much easier to read and write Python
programs compared to other languages like: C++, Java, C#.
Python makes programming fun and allows you to focus
on the solution rather than syntax. If you are a newbie, it's
a great choice to start your journey with Python.
Python is portable
Python scripts can be used on different operating systems
such as: Windows, Linux, UNIX, Amigo, Mac OS, etc. You
can move Python programs from one platform to another,
and run it without any changes.
It runs seamlessly on almost all platforms including
Windows, Mac OS X and Linux.
Python is open source
Even though all rights of this program are reserved for the
Python institute, but it is open source and there is no
limitation in using, changing and distributing. You can freely
use and distribute Python, even for commercial use. Not only
can you use and distribute software’s written in it, you can
even make changes to the Python's source code. Python has a
large community constantly improving it in each iteration.
Python supports other technologies
It can support COM, .Net, etc objects.
Extensible and Embeddable
Suppose an application requires high performance. You
can easily combine pieces of C/C++ or other languages
with Python code.
This will give your application high performance as well
as scripting capabilities which other languages may not
provide out of the box.
A high-level, interpreted language
Unlike C/C++, you don't have to worry about daunting
tasks like memory management, garbage collection and so
on. Likewise, when you run Python code, it automatically
converts your code to the language your computer
understands. You don't need to worry about any lower-
level operations.
Large standard libraries to solve common tasks
Python has a number of standard libraries which makes
life of a programmer much easier since you don't have to
write all the code yourself. For example: Need to connect
MySQL database on a Web server? You can use MySQLdb
library using import MySQLdb . Standard libraries in
Python are well tested and used by hundreds of people. So
you can be sure that it won't break your application.
Object-oriented
Everything in Python is an object. Object oriented
programming (OOP) helps you solve a complex problem
intuitively. With OOP, you are able to divide these complex
problems into smaller sets by creating objects.
Python is a multi-paradigm programming language: object-
oriented programming and structured programming are fully
supported. Python uses dynamic typing and a combination of
reference counting and a cycle-detecting garbage collector for
memory management. An important feature of Python is
dynamic name resolution (late binding), which binds method
and variable names during program execution. Python was
designed to be highly extensible. Python can also be
embedded in existing applications that need a programmable
interface. Python has a large standard library, commonly
cited as one of Python's greatest strengths, providing tools
suited to many tasks. For Internet based applications, a large
number of standard formats and protocols (such as MIME and
HTTP) are supported. Modules for creating graphical user
interfaces, connecting to relational databases, pseudorandom
number generators, arithmetic with arbitrary precision
decimals, manipulating regular expressions, and doing unit
testing are also included.
6.Python can be used to write a wide variety of programs:
Python is a well designed language that can be used for
real world programming. The most common program
types that can be written by Python are categorized below:
System programming
Pythons Internal interfaces support working with services
of operating system and hence makes it a suitable
language for system programming. The standard library of
Python can support the different types of platforms and
operating systems. It contains some tools for working with
system resources such as environmental variables, files,
sockets, pipe, processes, multiple treats, command line,
standard stream interfaces, shell programming, etc.
Graphical User Interface (GUI)
Tkinter and wxPython are the basic interfaces for designing
GUIs in Python. Tkinter is a standard object-oriented
interface that is distributed with Python interpreter. It
provides the essential tools for designing GUI.
Network and internet programming
Various modules are embedded in Python standard
library that provide many tools for network programmers,
such as: client -server connection, socket programming,
FTP, Telnet, email functions, RPC, SOAP, etc.
Components integrity
Python is able to make an integrated connection between
its codes and other components. Tools such as Swing and
SIP can import the compiled codes of other languages for
using in Python.
Database programming
Python supports most of the common databases like
Sybase, Oracle, Informix, MySQL, PostgreSQL, SQLite, etc.
Pickle is a standard module that can store and recover
objects in files. Also, ZODB is a pure object-oriented tool
for working with databases. From Python 2.5 on, SQLite
was considered as a standard part of Python.
Other programming applications
Python dominates a wide extent of programming areas. For
example, PyGame is a tool for game programming and PIL is
used for image processing. For robotic programming, PyRo
exists. A complete package for artificial intelligence, network
simulation, and shell programming was published under the
title NLTK. Almost in all area you can find sufficient modules
that can help you to get to your goals. There are different
tools for Python users with different needs. This good feature
makes Python suitable for any kind of programming. Large
amount of using Python by popular websites and applications
is the best evidence for this matter.
7.Python Users:
Many corporations have used and been using this tool for
different functions. Some of them are enlisted:
 Google is one of the Python users that included
this language in its web search system and
employed Python’s creator, too.
 YouTube video sharing service makes extensive
use of Python.
 Popular BitTorrent peer-to-peer file sharing
system is written by Python.
 ESRI uses Python as an end-user customization
tool for its popular GIS mapping products.
 NASA, Los Alamos, Fermilab, JPL, and others use
Python for scientific programming tasks.
 iRobot uses Python to develop commercial
robotic vacuum cleaners.
 Intel, Cisco, Hewlett-Packard, Seagate, Qualcomm,
and IBM use Python for hardware testing.




 NSA uses Python for cryptography and
intelligence analysis.
 IronPort email server product uses more than 1
million lines of Python code to do its job.
 One Laptop Per Child (OLPC) project builds its
user interface and activity model in Python.
 Industrial Light & Magic, Pixar, and others use
Python in the production of movie animation.
 JPMorgan Chase, UBS, Getco, and Citadel apply
Python for financial market forecasting.
8. Future of Python:
According to the TIOBE index, Python is the 4th most popular
programming language out of 100 With the rise of Ruby on
Rails and more recently Node.js, Python's usage as the main
prototyping language for backend web development has
diminished somewhat, especially since it has a fragmented
MVC ecosystem. However, with big data becoming more and
more important, Python has become a skill that is more in
demand than ever, especially it can be integrated into web
applications. As an open source project, Python is actively
worked on with a moderate update cycle, pushing out new
versions every year or so to make sure it remains relevant. In
terms of search volume for anyone interested in learning
Python, it has skyrocketed to the 1st place when compared to
other languages.
9. CONCLUSION
In this paper, we introduced the Python programming
language as a suitable choice for learning and real world
programming. The paper has discussed the characteristics,
features, types of programming support offered by python.
According these characteristics we found Python as a fast,
powerful, portable, simple and open source language that
supports other technologies. Then, different types of
programs that can be written by Python were investigated.
The paper has also discussed about the latest applications of
python by some of the popular corporations. The paper has
cited the reasons as to why python language is the fastest
growing programming language based on the information
obtained from popular and trusted magazines and websites.
REFERENCES
[1] TIOBE Software Index (2011). "TIOBE
Programming Community Index Python". 1
[2] "Programming Language Trends - O'Reilly Radar".
Radar.oreilly.com. 2 August 2006.
[3] "The RedMonk Programming Language Rankings:
January 2011 – tecosystems". Redmonk.com.
[4] Summerfield, Mark. Rapid GUI Programming with
Python and Qt.
[5] Kuhlman, Dave. "A Python Book: Beginning
Python, Advanced Python, and Python Exercises".
[6] https://stackoverflow.com
[7] https://github.com

Más contenido relacionado

La actualidad más candente

Python Programming ppt
Python Programming pptPython Programming ppt
Python Programming pptismailmrribi
 
Advanced topics in software engineering
Advanced topics in software engineeringAdvanced topics in software engineering
Advanced topics in software engineeringRupesh Vaishnav
 
summer training report on python
summer training report on pythonsummer training report on python
summer training report on pythonShubham Yadav
 
CLASS OBJECT AND INHERITANCE IN PYTHON
CLASS OBJECT AND INHERITANCE IN PYTHONCLASS OBJECT AND INHERITANCE IN PYTHON
CLASS OBJECT AND INHERITANCE IN PYTHONLalitkumar_98
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software EngineeringSaqib Raza
 
Decision properties of reular languages
Decision properties of reular languagesDecision properties of reular languages
Decision properties of reular languagesSOMNATHMORE2
 
Introduction to python
Introduction to pythonIntroduction to python
Introduction to pythoneShikshak
 
Python games
Python gamesPython games
Python gamesmolw
 
Looping statement in python
Looping statement in pythonLooping statement in python
Looping statement in pythonRaginiJain21
 
Issues in knowledge representation
Issues in knowledge representationIssues in knowledge representation
Issues in knowledge representationSravanthi Emani
 
15CS81 Module1 IoT
15CS81 Module1 IoT15CS81 Module1 IoT
15CS81 Module1 IoTGanesh Awati
 
Unit 2,3,4 _ Internet of Things A Hands-On Approach (Arshdeep Bahga, Vijay Ma...
Unit 2,3,4 _ Internet of Things A Hands-On Approach (Arshdeep Bahga, Vijay Ma...Unit 2,3,4 _ Internet of Things A Hands-On Approach (Arshdeep Bahga, Vijay Ma...
Unit 2,3,4 _ Internet of Things A Hands-On Approach (Arshdeep Bahga, Vijay Ma...Selvaraj Seerangan
 
Python Foundation – A programmer's introduction to Python concepts & style
Python Foundation – A programmer's introduction to Python concepts & stylePython Foundation – A programmer's introduction to Python concepts & style
Python Foundation – A programmer's introduction to Python concepts & styleKevlin Henney
 

La actualidad más candente (20)

Python final ppt
Python final pptPython final ppt
Python final ppt
 
Python Programming ppt
Python Programming pptPython Programming ppt
Python Programming ppt
 
Basics of python
Basics of pythonBasics of python
Basics of python
 
Advanced topics in software engineering
Advanced topics in software engineeringAdvanced topics in software engineering
Advanced topics in software engineering
 
summer training report on python
summer training report on pythonsummer training report on python
summer training report on python
 
CLASS OBJECT AND INHERITANCE IN PYTHON
CLASS OBJECT AND INHERITANCE IN PYTHONCLASS OBJECT AND INHERITANCE IN PYTHON
CLASS OBJECT AND INHERITANCE IN PYTHON
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
 
Python basic
Python basicPython basic
Python basic
 
Decision properties of reular languages
Decision properties of reular languagesDecision properties of reular languages
Decision properties of reular languages
 
Introduction to python
Introduction to pythonIntroduction to python
Introduction to python
 
Python games
Python gamesPython games
Python games
 
Looping statement in python
Looping statement in pythonLooping statement in python
Looping statement in python
 
operating system lecture notes
operating system lecture notesoperating system lecture notes
operating system lecture notes
 
Issues in knowledge representation
Issues in knowledge representationIssues in knowledge representation
Issues in knowledge representation
 
Python ppt
Python pptPython ppt
Python ppt
 
15CS81 Module1 IoT
15CS81 Module1 IoT15CS81 Module1 IoT
15CS81 Module1 IoT
 
Unit 2,3,4 _ Internet of Things A Hands-On Approach (Arshdeep Bahga, Vijay Ma...
Unit 2,3,4 _ Internet of Things A Hands-On Approach (Arshdeep Bahga, Vijay Ma...Unit 2,3,4 _ Internet of Things A Hands-On Approach (Arshdeep Bahga, Vijay Ma...
Unit 2,3,4 _ Internet of Things A Hands-On Approach (Arshdeep Bahga, Vijay Ma...
 
Java vs python
Java vs pythonJava vs python
Java vs python
 
Python Foundation – A programmer's introduction to Python concepts & style
Python Foundation – A programmer's introduction to Python concepts & stylePython Foundation – A programmer's introduction to Python concepts & style
Python Foundation – A programmer's introduction to Python concepts & style
 
Introduction to python
 Introduction to python Introduction to python
Introduction to python
 

Similar a Research paper on python by Rj

Python Programming and ApplicationsUnit-1.docx
Python Programming and ApplicationsUnit-1.docxPython Programming and ApplicationsUnit-1.docx
Python Programming and ApplicationsUnit-1.docxManohar k
 
IRJET- Python: Simple though an Important Programming Language
IRJET- Python: Simple though an Important Programming LanguageIRJET- Python: Simple though an Important Programming Language
IRJET- Python: Simple though an Important Programming LanguageIRJET Journal
 
Migration of Applications to Python is the most prudent Decision
Migration of Applications to Python is the most prudent DecisionMigration of Applications to Python is the most prudent Decision
Migration of Applications to Python is the most prudent DecisionMindfire LLC
 
Python quick guide1
Python quick guide1Python quick guide1
Python quick guide1Kanchilug
 
Python Programming Unit1_Aditya College of Engg & Tech
Python Programming Unit1_Aditya College of Engg & TechPython Programming Unit1_Aditya College of Engg & Tech
Python Programming Unit1_Aditya College of Engg & TechRamanamurthy Banda
 
Why Python in required in Civil Engineering
Why Python in required in Civil EngineeringWhy Python in required in Civil Engineering
Why Python in required in Civil EngineeringRushikesh Kolhe
 
Ways To Become A Good Python Developer
Ways To Become A Good Python DeveloperWays To Become A Good Python Developer
Ways To Become A Good Python DeveloperCodeMonk
 
Basic Python Introduction Lecture 1.pptx
Basic Python Introduction Lecture 1.pptxBasic Python Introduction Lecture 1.pptx
Basic Python Introduction Lecture 1.pptxAditya Patel
 
introduction to Python (for beginners)
introduction to Python (for beginners)introduction to Python (for beginners)
introduction to Python (for beginners)guobichrng
 
Python slide basic to advanced english tutorial
Python slide basic to advanced english tutorialPython slide basic to advanced english tutorial
Python slide basic to advanced english tutorialmasukmia.com
 
introduction of python in data science
introduction of python in data scienceintroduction of python in data science
introduction of python in data sciencebhavesh lande
 

Similar a Research paper on python by Rj (20)

Python Programming and ApplicationsUnit-1.docx
Python Programming and ApplicationsUnit-1.docxPython Programming and ApplicationsUnit-1.docx
Python Programming and ApplicationsUnit-1.docx
 
Python
PythonPython
Python
 
IRJET- Python: Simple though an Important Programming Language
IRJET- Python: Simple though an Important Programming LanguageIRJET- Python: Simple though an Important Programming Language
IRJET- Python: Simple though an Important Programming Language
 
Migration of Applications to Python is the most prudent Decision
Migration of Applications to Python is the most prudent DecisionMigration of Applications to Python is the most prudent Decision
Migration of Applications to Python is the most prudent Decision
 
Python quick guide1
Python quick guide1Python quick guide1
Python quick guide1
 
Python Assignment Help
Python Assignment HelpPython Assignment Help
Python Assignment Help
 
Introduction to python
Introduction to pythonIntroduction to python
Introduction to python
 
Python Programming Unit1_Aditya College of Engg & Tech
Python Programming Unit1_Aditya College of Engg & TechPython Programming Unit1_Aditya College of Engg & Tech
Python Programming Unit1_Aditya College of Engg & Tech
 
Why Python in required in Civil Engineering
Why Python in required in Civil EngineeringWhy Python in required in Civil Engineering
Why Python in required in Civil Engineering
 
python unit2.pptx
python unit2.pptxpython unit2.pptx
python unit2.pptx
 
Introduction to Python
Introduction to PythonIntroduction to Python
Introduction to Python
 
Introduction To Python
Introduction To PythonIntroduction To Python
Introduction To Python
 
Ways To Become A Good Python Developer
Ways To Become A Good Python DeveloperWays To Become A Good Python Developer
Ways To Become A Good Python Developer
 
Basic Python Introduction Lecture 1.pptx
Basic Python Introduction Lecture 1.pptxBasic Python Introduction Lecture 1.pptx
Basic Python Introduction Lecture 1.pptx
 
Introduction to Python
Introduction to PythonIntroduction to Python
Introduction to Python
 
introduction to Python (for beginners)
introduction to Python (for beginners)introduction to Python (for beginners)
introduction to Python (for beginners)
 
Cmpe202 01 Research
Cmpe202 01 ResearchCmpe202 01 Research
Cmpe202 01 Research
 
Lecture 1.pptx
Lecture 1.pptxLecture 1.pptx
Lecture 1.pptx
 
Python slide basic to advanced english tutorial
Python slide basic to advanced english tutorialPython slide basic to advanced english tutorial
Python slide basic to advanced english tutorial
 
introduction of python in data science
introduction of python in data scienceintroduction of python in data science
introduction of python in data science
 

Más de Shree M.L.Kakadiya MCA mahila college, Amreli

Más de Shree M.L.Kakadiya MCA mahila college, Amreli (20)

Machine Learning by Rj
Machine Learning by RjMachine Learning by Rj
Machine Learning by Rj
 
Listeners and filters in servlet
Listeners and filters in servletListeners and filters in servlet
Listeners and filters in servlet
 
Servlet unit 2
Servlet unit 2 Servlet unit 2
Servlet unit 2
 
Servlet by Rj
Servlet by RjServlet by Rj
Servlet by Rj
 
Networking in python by Rj
Networking in python by RjNetworking in python by Rj
Networking in python by Rj
 
Jsp in Servlet by Rj
Jsp in Servlet by RjJsp in Servlet by Rj
Jsp in Servlet by Rj
 
Motion capture by Rj
Motion capture by RjMotion capture by Rj
Motion capture by Rj
 
Research paper on big data and hadoop
Research paper on big data and hadoopResearch paper on big data and hadoop
Research paper on big data and hadoop
 
Text processing by Rj
Text processing by RjText processing by Rj
Text processing by Rj
 
Python and data analytics
Python and data analyticsPython and data analytics
Python and data analytics
 
Multithreading by rj
Multithreading by rjMultithreading by rj
Multithreading by rj
 
Django by rj
Django by rjDjango by rj
Django by rj
 
Database programming
Database programmingDatabase programming
Database programming
 
CGI by rj
CGI by rjCGI by rj
CGI by rj
 
Adv. python regular expression by Rj
Adv. python regular expression by RjAdv. python regular expression by Rj
Adv. python regular expression by Rj
 
Seminar on Project Management by Rj
Seminar on Project Management by RjSeminar on Project Management by Rj
Seminar on Project Management by Rj
 
Spring by rj
Spring by rjSpring by rj
Spring by rj
 
Python by Rj
Python by RjPython by Rj
Python by Rj
 
Leadership & Motivation
Leadership & MotivationLeadership & Motivation
Leadership & Motivation
 
Event handling
Event handlingEvent handling
Event handling
 

Último

A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESmohitsingh558521
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 

Último (20)

A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 

Research paper on python by Rj

  • 1. Python – Most Powerful and Fastest Growing Language Solanki Raviraj G. Assistant Professor, Shree M.L.Kakadiya MCA mahila college, Amreli ---------------------------------------------------------------------***--------------------------------------------------------------------- Abstract: Python is a powerful high-level, object-oriented programming language created by Guido van Rossum during 1985- 1990. In this paper we first introduce you to the python programming characteristics and features. This paper also discusses about the reasons behind python being credited as the most powerful and fastest growing programming language. This paper features about the characteristics and most important features of python language, the types of programming supported by python and its users and its applications. 1. INTRODUCTION In this paper, we are going to introduce the run time structure and characteristics of Python. Python is a general-purpose, high-level programming language which is widely used in the recent times. Its design philosophy emphasizes code readability, and its syntax allows programmers to express concepts in fewer lines of code than would be possible in languages such as C. The language constructs enable the user to write clear programs on both a small and large scale The most important feature in Python being it supports multiple programming paradigms, including object- oriented, imperative and functional programming or procedural styles. Python supports a dynamic type system and automatic memory management and has a large and comprehensive standard library. Python interpreters are available for many operating systems.. 2. Python Run time structure Actually all the complexities in running a python code is deliberately hidden from the programmers. We type code into text files, and run those files through the interpreter. But something more is happening. The basic understanding of the run time structure of python can help to understand a detailed picture of program execution. [Python’s traditional runtime execution model: source code you type is translated to byte code, which is then run by the Python Virtual Machine. Your code is automatically compiled, but then it is interpreted.] First the python script is compiled to byte code and then routed to a virtual machine. Byte code compilation Python first compiles the source code of the program to “byte code“. Byte code is low level, platform independent representation of the source code. Byte code runs more quickly than the source code. Python does not need to reanalyze and reparse each source statement repeatedly. The net effect is that pure Python code runs at speeds somewhere between those of a traditional compiled language and a traditional interpreted language. Python will store the byte code wit a .pyc (means compiled .py source) extension. When we run the source code for the second time, python will load the byte code, skips the compilation step unless we have not change the code. Python Virtual Machine (PVM) Once your byte code is formed, then it is carried to python virtual machine for execution. PVM is a big loop that iterates through the byte code instructions, one by one to carry out their operations. PVM is run time of engine of python. It is the component that actually runs the code. 3. Is python better than java? There are so many reasons but for better performance and if we talk about the speed java is always the best choice. Compiled code is almost always faster than interpreted code.Java code is compiled by the java compiler, and then executed by the JVM.But Python is interpreted. So if you write a code for a single algorithm in python and java, it’s very likely for java to be faster. 1. Java creates applications that work across various platforms, while Python does not. 2. Java programs tend to run slower compared to Python programs. 3. Java uses traditional braces to start and end blocks, while Python uses indentation. 4. Java employs static typing, while Python is dynamically typed. 5. Python is simpler and more compact compared to Java. Most programmers agree that Python is an easier language for novice programmers to learn. You will progress faster if you are learning Python as a first language than Java. However, the popularity of Java means that learning this powerful language is essential if you want to develop apps for Android.
  • 2. 4. Characteristics of python: Python is a well designed language that can be used for real world programming. Python is a very high-level, dynamic, object-oriented, general purpose programming language that uses interpreter and can be used in a vast domain of applications. Python was designed to be easy to understand and use. Python is termed as a very user-friendly and beginner-friendly language in the recent times. Python has gained popularity for being a beginner-friendly language, and it has replaced Java as the most popular introductory language. As a dynamically typed language, Python is really flexible. Furthermore, Python is also more forgiving of errors, so you'll still be able to compile and run your program until you hit the problematic part. Python is a flexible, simple coding programming language. This language can support different styles of programming including structural and object-oriented. Other styles can be used, too. Python is very flexible, because of its ability to use modular components that were designed in other programming languages. For example, you can write a program in C++ and import it to python as a module. Then add something else to it (for example design a GUI for it). However, there are few drawbacks with python: Not Easy to Maintain: Because Python is a dynamically typed language, the same thing can easily mean something different depending on the context. As a Python app grows larger and more complex, this may get difficult to maintain as errors will become difficult to track down and fix, so it will take experience and insight to know how to design your code or write unit tests to ease maintainability. Slow: As a dynamically typed language, Python is slow because it is too flexible and the machine would need to do a lot of referencing to make sure what the definition of something is, and this slows Python performance down. 5. Features of Python: Python is simple It is a very high-level language that has many sources for learning. Python supports a wide variety of third party tools which makes it much easier to to use and motivates the users to continue with. Python has a very simple and elegant syntax. It's much easier to read and write Python programs compared to other languages like: C++, Java, C#. Python makes programming fun and allows you to focus on the solution rather than syntax. If you are a newbie, it's a great choice to start your journey with Python. Python is portable Python scripts can be used on different operating systems such as: Windows, Linux, UNIX, Amigo, Mac OS, etc. You can move Python programs from one platform to another, and run it without any changes. It runs seamlessly on almost all platforms including Windows, Mac OS X and Linux. Python is open source Even though all rights of this program are reserved for the Python institute, but it is open source and there is no limitation in using, changing and distributing. You can freely use and distribute Python, even for commercial use. Not only can you use and distribute software’s written in it, you can even make changes to the Python's source code. Python has a large community constantly improving it in each iteration. Python supports other technologies It can support COM, .Net, etc objects. Extensible and Embeddable Suppose an application requires high performance. You can easily combine pieces of C/C++ or other languages with Python code. This will give your application high performance as well as scripting capabilities which other languages may not provide out of the box. A high-level, interpreted language Unlike C/C++, you don't have to worry about daunting tasks like memory management, garbage collection and so on. Likewise, when you run Python code, it automatically converts your code to the language your computer understands. You don't need to worry about any lower- level operations.
  • 3. Large standard libraries to solve common tasks Python has a number of standard libraries which makes life of a programmer much easier since you don't have to write all the code yourself. For example: Need to connect MySQL database on a Web server? You can use MySQLdb library using import MySQLdb . Standard libraries in Python are well tested and used by hundreds of people. So you can be sure that it won't break your application. Object-oriented Everything in Python is an object. Object oriented programming (OOP) helps you solve a complex problem intuitively. With OOP, you are able to divide these complex problems into smaller sets by creating objects. Python is a multi-paradigm programming language: object- oriented programming and structured programming are fully supported. Python uses dynamic typing and a combination of reference counting and a cycle-detecting garbage collector for memory management. An important feature of Python is dynamic name resolution (late binding), which binds method and variable names during program execution. Python was designed to be highly extensible. Python can also be embedded in existing applications that need a programmable interface. Python has a large standard library, commonly cited as one of Python's greatest strengths, providing tools suited to many tasks. For Internet based applications, a large number of standard formats and protocols (such as MIME and HTTP) are supported. Modules for creating graphical user interfaces, connecting to relational databases, pseudorandom number generators, arithmetic with arbitrary precision decimals, manipulating regular expressions, and doing unit testing are also included. 6.Python can be used to write a wide variety of programs: Python is a well designed language that can be used for real world programming. The most common program types that can be written by Python are categorized below: System programming Pythons Internal interfaces support working with services of operating system and hence makes it a suitable language for system programming. The standard library of Python can support the different types of platforms and operating systems. It contains some tools for working with system resources such as environmental variables, files, sockets, pipe, processes, multiple treats, command line, standard stream interfaces, shell programming, etc. Graphical User Interface (GUI) Tkinter and wxPython are the basic interfaces for designing GUIs in Python. Tkinter is a standard object-oriented interface that is distributed with Python interpreter. It provides the essential tools for designing GUI. Network and internet programming Various modules are embedded in Python standard library that provide many tools for network programmers, such as: client -server connection, socket programming, FTP, Telnet, email functions, RPC, SOAP, etc. Components integrity Python is able to make an integrated connection between its codes and other components. Tools such as Swing and SIP can import the compiled codes of other languages for using in Python. Database programming Python supports most of the common databases like Sybase, Oracle, Informix, MySQL, PostgreSQL, SQLite, etc. Pickle is a standard module that can store and recover objects in files. Also, ZODB is a pure object-oriented tool for working with databases. From Python 2.5 on, SQLite was considered as a standard part of Python. Other programming applications Python dominates a wide extent of programming areas. For example, PyGame is a tool for game programming and PIL is used for image processing. For robotic programming, PyRo exists. A complete package for artificial intelligence, network simulation, and shell programming was published under the title NLTK. Almost in all area you can find sufficient modules that can help you to get to your goals. There are different tools for Python users with different needs. This good feature makes Python suitable for any kind of programming. Large amount of using Python by popular websites and applications is the best evidence for this matter. 7.Python Users: Many corporations have used and been using this tool for different functions. Some of them are enlisted:  Google is one of the Python users that included this language in its web search system and employed Python’s creator, too.  YouTube video sharing service makes extensive use of Python.  Popular BitTorrent peer-to-peer file sharing system is written by Python.  ESRI uses Python as an end-user customization tool for its popular GIS mapping products.  NASA, Los Alamos, Fermilab, JPL, and others use Python for scientific programming tasks.  iRobot uses Python to develop commercial robotic vacuum cleaners.  Intel, Cisco, Hewlett-Packard, Seagate, Qualcomm, and IBM use Python for hardware testing.    
  • 4.  NSA uses Python for cryptography and intelligence analysis.  IronPort email server product uses more than 1 million lines of Python code to do its job.  One Laptop Per Child (OLPC) project builds its user interface and activity model in Python.  Industrial Light & Magic, Pixar, and others use Python in the production of movie animation.  JPMorgan Chase, UBS, Getco, and Citadel apply Python for financial market forecasting. 8. Future of Python: According to the TIOBE index, Python is the 4th most popular programming language out of 100 With the rise of Ruby on Rails and more recently Node.js, Python's usage as the main prototyping language for backend web development has diminished somewhat, especially since it has a fragmented MVC ecosystem. However, with big data becoming more and more important, Python has become a skill that is more in demand than ever, especially it can be integrated into web applications. As an open source project, Python is actively worked on with a moderate update cycle, pushing out new versions every year or so to make sure it remains relevant. In terms of search volume for anyone interested in learning Python, it has skyrocketed to the 1st place when compared to other languages. 9. CONCLUSION In this paper, we introduced the Python programming language as a suitable choice for learning and real world programming. The paper has discussed the characteristics, features, types of programming support offered by python. According these characteristics we found Python as a fast, powerful, portable, simple and open source language that supports other technologies. Then, different types of programs that can be written by Python were investigated. The paper has also discussed about the latest applications of python by some of the popular corporations. The paper has cited the reasons as to why python language is the fastest growing programming language based on the information obtained from popular and trusted magazines and websites. REFERENCES [1] TIOBE Software Index (2011). "TIOBE Programming Community Index Python". 1 [2] "Programming Language Trends - O'Reilly Radar". Radar.oreilly.com. 2 August 2006. [3] "The RedMonk Programming Language Rankings: January 2011 – tecosystems". Redmonk.com. [4] Summerfield, Mark. Rapid GUI Programming with Python and Qt. [5] Kuhlman, Dave. "A Python Book: Beginning Python, Advanced Python, and Python Exercises". [6] https://stackoverflow.com [7] https://github.com