How to Get Started With Python March 3, 2017 Todd V. Rovito todd.rovito@us.af.mil AFRL/RYAT Air Force Research Laboratory
Outline What is Python? Python Software Stack for Science and Engineering Enthought Canopy AFRL Enthought Python Site License Other Python Distributions: Anaconda Python References
What is Python? From wikipedia Python is a widely used high-level, general-purpose, interpreted, dynamic programming language. Its design philosophy emphasizes code readability, and its syntax allows programmers to express concepts in fewer lines of code than possible in languages such as C++ or Java. The language provides constructs intended to enable writing clear programs on both a small and large scale. Python supports multiple programming paradigms, including object-oriented, imperative and functional programming or procedural styles. It features a dynamic type system and automatic memory management and has a large and comprehensive standard library. Features that make Python ideal for R&D: Open source with a very liberal license you can do almost anything with Python, collaboration is not hindered because you collaborators don’t have a toolbox _HUGE_ community pypi (Python Package Index) contains 92,872 packages Easy language to learn and use, the syntax makes sense! Python is a great glue language. Do you want to string together legacy C/Fortran/MATLAB code? Python makes this easy.
Python Software Stack for Science and Engineering Python by itself is not that useful for S&E Many add-ons and extensions have been created to allow python to work for S&E’s, web development, big data processing, and other software “stacks”. iPython is now called Jupyter
Enthought Canopy Enthought Canopy is a comprehensive Python analysis environment that provides easy Installation of over 450 core scientific analytic and Python packages, creating a robust Platform you can explore, develop and visualize on. Some of its features: One-Click Python Package Installation with a Graphical Package Manager Data Import Tool (NEW!) for importing columnar text files into Pandas DataFrames and creating repeatable data munging scripts Code Editor with Jupyter/IPython Notebook Support Interactive Graphical Python Code Debugger and Variable Browser Integrated IPython Prompt Integration with the Intel MKL and Microsoft Python Tools for Visual Studio Think of Enthought like a Linux Distribution such as RedHat or Ubuntu but for Python!
AFRL Enthought Python Site License AFRL/RC purchased a Enthought Python Site License which allows all AFRL employees and contractors to use Python on government computers Enthought Python has been approved by AFNIC so the software is pre-approved for RDT&E, Stand Alone Networks, and AFNET Steps to get access to AFRL’s Enthought Python Site License Go to https://enthought.com/accounts/login/ and create an account with the user's AF email address as the user ID. Notify Mr. Bob Helt (robert.helt.1@us.af.mil) when the account has been created and request registration as a Basic subscriber. Mr. Helt requests Enthought Support to add the user to the AFRL site license. Enthought support notifies Mr. Helt that the user has been registered. Mr. Helt notifies the user that he/she now has access to Enthought online resources including software downloads, package library, documentation, and online training
Other Python Distributions: Anaconda Anaconda is gaining a lot of momentum Has support from Intel The basic package is 100% free as in free beer They have a software package system (known as conda) for any kind of software, pip is just Python packages while conda is a package manager for any software TVR got Anaconda 4.x for Python 2.7.x approved on RDT&E working on Anaconda 4.x for Python 3.x. Python(x,y) open source and free ALL PYTHON IS GOOD
Python References Enthought.com Location of Enthought Canopy and Enthought Python Distribution Docs.python.org <- A great resource for general Python Docs.enthought.com <- Release notes, installation instructions for Enthought Pyvideo.org <- a repository of links to videos on Python from all the python conferences Training.enthought.com <- get a Enthought account from Bob get free TRAINING! scipy-lectures.org <- Tutorials on the scientific Python ecosystem awesome-python.com <- A curated list of awesome Python frameworks, libraries, software and resources talkpython.fm <- talk python to me podcast pythonbytes.fm <- very short and to the point weekly updates about python