logo

Intermediate Python 3.x (DV4931)

This 4 day course picks up where Introduction to Python 3.x leaves off, covering some topics in more detail, and adding many new ones, with a focus on enterprise development. This is a hands-on programming class. All concepts are reinforced by informal practice during the lecture followed by lab exercises. Many labs build on earlier labs, which helps students retain the earlier material.

Pohađajte naše obuke programiranja u Eccentrix trening centru u Beogradu, uživo putem interneta (virtuelno online), kao i u Vašim prostorijama (onsite).

Specijalni popusti se odobravaju prilikom prijave više učesnika koji istovremeno pohađaju obuku iz vaše kompanije, državni i neprofitni sektor, itd. Kontaktirajte nas da biste saznali više.

Termini obuke

Trajanje obuke: 
4 dana / 28 sati

Privatni trening

On-site / Online
Minimalan broj polaznika: 3
4 dana / 28 sati
Cena na zahtev
srpski ili engleski
Plan obuke: 

1. Python Refresher

  • Variables
  • Basic Python Data Types
  • Sequences
  • Mapping Types
  • Program Structure
  • Files And Console I/O
  • Conditionals
  • Loops
  • Builtins

2. OS Services

  • The OS Module
  • Paths, Directories, and Filenames
  • Environment Variables
  • Launching External Programs
  • Walking Directory Trees
  • The Datetime Module
  • The Calendar Module

3. Pythonic Programming

  • The Zen of Python
  • Common Python Idioms
  • Unpacking Function Arguments
  • Lambda Functions
  • List Comprehensions
  • Iterables
  • Writing Generators
  • String Tricks
  • String Formatting

4. Modules

  • Using Import
  • Module Search Path
  • Namespaces
  • Executing Modules as Scripts
  • Packages
  • Confguring Import With __Init__.Py
  • Name Resolution (AKA Scope)
  • Python Style

5. Classes

  • Defning Classes
  • Instance Objects
  • Instance Attributes
  • Instance Methods
  • __Init__
  • Properties
  • Class Data
  • Class Methods
  • Inheritance
  • Multiple Inheritance
  • Using Super ()
  • Special Methods
  • Class-Private Variables
  • Static Methods

6. Metaprogramming

  • Globals() and Locals()
  • Working with Attributes
  • The Inspect Module
  • Decorator Functions
  • Decorator Classes
  • Decorator Parameters
  • Creating Classes At Runtime
  • Monkey Patching

7. Developer Tools

  • Program Development
  • Comments
  • Pylint
  • Customizing Pylint
  • Using Pyreverse
  • The Unittest Module
  • Fixtures
  • Skipping Tests
  • Making a Suite of Tests
  • Automated Test Discovery
  • Using Nose
  • The Python Debugger
  • Starting Debug Mode
  • Stepping Through a Program
  • Setting Breakpoints
  • Profling
  • Benchmarking

8. Database access

  • The DB API
  • Available Interfaces
  • Connecting to a server
  • connect() examples
  • Creating a cursor
  • Executing a statement
  • Parameterized statements
  • Dictionary cursors
  • Metadata
  • Transactions
  • Object-relational mappers

9. PyQt4

  • Event Driven Applications
  • Gui Application Flow Chart
  • External Anatomy of a Pyqt4 Application
  • Internal Anatomy of a Pyqt4 Application
  • Using Designer
  • Anatomy of a Designer-Based Application
  • Naming Conventions
  • Common Widgets
  • Layouts
  • Selectable Buttons
  • Actions and Events
  • Menu Bar
  • Status Bar
  • Using Predefned Dialogs
  • Creating Custom Dialogs
  • Tabs
  • Niceties
  • Working with Images
  • Complete Example

10. Network Programming

  • Sockets
  • Socket Options
  • Client Concepts
  • Server Concepts
  • Application Protocols
  • Forking Servers
  • Grabbing Html from The Web
  • Consuming Web Services
  • Web Data the Easier Way
  • Sending Email
  • Binary Data
  • The Struct Module

11. Multiprogramming

  • What Are Threads?
  • The Python Thread Manager
  • The Threading Module
  • Threads for the Impatient
  • Creating a Thread Class
  • Variables Sharing
  • Using Queues
  • Debugging Threaded Programs
  • The Multiprocessing Module
  • Alternatives to Multiprogramming

12. System Administration and Scripting

  • The Subprocess Module
  • Subprocess Convenience Functions
  • Using the Sh Module
  • Permissions
  • Saving Information
  • Creating a Useful Command Line Script
  • Creating Filters
  • Parsing the Command Line
  • Simple Logging
  • Logging Levels
  • Formatting Log Entries
  • Logging to Other Destinations

13. XML and JSON

  • About Xml
  • Normal Approaches to Xml
  • Which Module to Use?
  • Getting Started With ElementTree
  • How ElementTree Works
  • Creating a New Xml Document
  • Parsing an Xml Document
  • Navigating the Xml Document
  • Using XPath
  • Advanced XPath
  • About JSON
  • Reading JSON
  • Writing JSON

14. Extending Python with C

  • Why Extend Python?
  • Ways to Extend Python With C
  • Hand-Coded C
  • Overview
  • The C Program
  • Methods
  • The Method Table
  • The Init Function
  • Handling Errors
  • Custom Exception Objects
  • Putting It All Together
  • Using SWIG
  • The Interface Fle
  • Generating the Wrappers
  • Building and Installing The Extension
  • Ctypes
  • For More Information

Appendix A: Python Books

Appendix B: Python Gotchas

Benefiti: 
  • Video snimak predavanja u periodu od 180 dana posle kraja obuke

  • Pristup laboratorijama u toku trajanja kursa
  • Materijal u elektronskom obliku

  • Sertifikat o pohađanju kursa

Poželjno predznanje: 

All students should be able to write simple Python scripts, using basic data types, program structures, and the standard Python library.

Dalje usavršavanje: 

Kontaktirajte nas za više informacija o ceni:

Eccentrix
Office: +381 11 71 38 192
Mobile: +381 65 31 38 195
E-mail: Jelena.Mijanovic@eccentrix.rs

Milutina Milankovića 9đ,
11070 Novi Beograd
www.eccentrix.rs

Eccentrix
Office: +381 11 71 38 192
Mobile: +381 65 31 38 197
E-mail: Boris.Gigovic@eccentrix.rs

Milutina Milankovića 9đ,
11070 Novi Beograd
www.eccentrix.rs