python - york university · 2019-09-30 · python intro •most in-demand ... supports multiple...
TRANSCRIPT
CSE 4482Network Security
Instructor: N. Vlajic, Fall 2019
Python
Python Intro• Most In-Demand Programming Languages 2019
https://codingnomads.co/blog/business/why-learn-java/http://www.globenewswire.com/NewsRoom/AttachmentNg/5d020743-2bc8-413e-a0cb-794f5e1f90bb/en
Python Intro (cont.)
• Most Popular Programming Languages 2019The PYPL PopularitY of Programming Language Index is created by analyzing how often language tutorials are searched on Google.
http://pypl.github.io/PYPL.html
Python Intro (cont.)
Python Intro (cont.)
https://data-flair.training/blogs/python-tutorial/
Python supports both procedure-oriented and object-oriented programming which is one of the key python features. It also supports multiple inheritance, unlike Java.
If you’re any familiar with languages like C++, you must first compile it, and then run it. But in Python, there is no need to compile it. Internally, its source code is converted into an immediate form called bytecode.By interpreted, we mean the source code is executed line by line, and not all at once. Because of this, it is easier to debug your code. Also, interpreting makes it just slightly slower than C++, but that does not matter compared to the benefits it has to offer.
You can take one code and run it on any machine, there is no need to write different code for different machines.
• What can be done with Python??
Python Intro (cont.)
https://data-flair.training/blogs/python-tutorial/
Python Intro (cont.)
Python Intro (cont.)
https://www.slideshare.net/p3infotech_solutions/python-programming-essentials-m2-introduction-to-python
Python Intro (cont.)
https://www.slideshare.net/p3infotech_solutions/python-programming-essentials-m2-introduction-to-python
Python (cont.)
• Python = a preferred languageof cyber security professionalsincluding hackers …
EASY TO LEARN
EASY DEBUGGING→ ‘compact’ language, uses minimum code, easy to spot errors
EXTENSIVE SUPPORT LIBRARIES→ comes with many useful libraries dealing with protocols, Web,
cryptography, … => improved programmer’s productivity
OPEN SOURCE→ available at zero cost
Python (cont.)
• Python uses in cyber security industry …
→ Exploit Development→ Networking→ Debugging→ Encryption / Decryption→ Reverse Engineering→ Web→ Forensics→ Malware Analysis
Python Intro (cont.)
• Python History developed in 1989 by Guido van Rossum (Netherlands) named after BBC TV show Monty Python’s Flying Circus Python 1.0 (1994) - full functional programming features Python 2.0 (2000) - garbage collection, pure OO, …
Python 3.0 (2008) - a whole bunch of changes, includingbetter support for Unicode
“I chose Python as a working title for the project, being in a slightly
irreverent mood (and a big fan of Monty Python's Flying Circus)."
→ will NOT be maintained beyond 2020
→ NOT backward compatible with Python 2→ see: https://docs.python.org/3/whatsnew/3.0.html
Python Intro (cont.)
• The Zen of Python (2004) guiding principles for Python’s design expressed as 20
aphorisms (19 of which have been written down) by Tom Peters
Basics of Python Language• Installing Python on Your Machine
go to https://python.org/download/ slightly different procedure for Linux, Mac, Windows …
Basics of Python Language (cont.)
• Running Python on Your Machine can work in interactive mode
→ invoke Python interpreter and interact with it directly → simply type ‘py’ in terminal (in Windows 10)
→ lines starting with >>> prompt is where you should type inyour commands; lines after is where results are shown
→ very convenient for testing Python commands→ however, if you exit terminal, all commands are gone …