Mycroft AI
  • Documentation
  • About Mycroft AI
    • Why use Mycroft AI?
    • Glossary of terms
    • Contributing
    • FAQ
  • Using Mycroft AI
    • Get Mycroft
      • Mark II
        • Mark II Dev Kit
      • Mark 1
      • Picroft
      • Linux
      • Mac OS and Windows with VirtualBox
      • Docker
      • Android
    • Pairing Your Device
    • Basic Commands
    • Installing New Skills
    • Customizations
      • Configuration Manager
      • mycroft.conf
      • Languages
        • Français (French)
        • Deutsch (German)
      • Using a Custom Wake Word
      • Speech-To-Text
      • Text-To-Speech
    • Troubleshooting
      • General Troubleshooting
      • Audio Troubleshooting
      • Wake Word Troubleshooting
      • Log Files
      • Support Skill
      • Getting more support
  • Skill Development
    • Voice User Interface Design Guidelines
      • What can a Skill do?
      • Design Process
      • Voice Assistant Personas
      • Interactions
        • Intents
        • Statements and Prompts
        • Confirmations
      • Conversations
      • Error Handling
      • Example Interaction Script
      • Prototyping
      • Design to Development
    • Development Setup
      • Python Resources
      • Your First Skill
    • Skill Structure
      • Lifecycle Methods
      • Logging
      • Skill Settings
      • Dependencies
        • Manifest.yml
        • Requirements files
      • Filesystem access
      • Skill API
    • Integration Tests
      • Test Steps
      • Scenario Outlines
      • Test Runner
      • Reviewing the Report
      • Adding Custom Steps
      • Old Test System
    • User interaction
      • Intents
        • Padatious Intents
        • Adapt Intents
      • Statements
      • Prompts
      • Parsing Utterances
      • Confirmations
      • Conversational Context
      • Converse
    • Displaying information
      • GUI Framework
      • Show Simple Content
      • Mycroft-GUI on a PC
      • Mark 1 Display
    • Advanced Skill Types
      • Fallback Skill
      • Common Play Framework
      • Common Query Framework
      • Common IoT Framework
    • Mycroft Skills Manager
      • Troubleshooting
    • Marketplace Submission
      • Skills Acceptance Process
        • Information Review Template
        • Code Review Template
        • Functional Review Template
        • Combined Template
      • Skill README.md
    • FAQ
  • Mycroft Technologies
    • Technology Overview
    • Roadmap
    • Mycroft Core
      • MessageBus
      • Message Types
      • Services
        • Enclosure
        • Voice Service
        • Audio Service
        • Skills Service
      • Plugins
        • Audioservice Plugins
        • STT Plugins
        • TTS Plugins
        • Wake Word Plugins
      • Testing
      • Legacy Repo
    • Adapt
      • Adapt Examples
      • Adapt Tutorial
    • Lingua Franca
    • Mimic TTS
      • Mimic 3
      • Mimic 2
      • Mimic 1
      • Mimic Recording Studio
    • Mycroft GUI
      • Remote STT and TTS
    • Mycroft Skills Kit
    • Mycroft Skills Manager
    • Padatious
    • Precise
    • Platforms
Powered by GitBook
On this page
  • Video Tutorials
  • Python Virtual Environments
  • Python Package Management
  • Books
  • Think Python
  • Automate the Boring Stuff with Python
  • Courses
  • FreeCodeCamp.org Video Tutorial
  • LearnPython.org by DataCamp
  • TutorialsPoint Python Tutorial
  • Documentation

Was this helpful?

  1. Skill Development
  2. Development Setup

Python Resources

Python is an object-oriented, interpreted, high-level programming language. It is known for being easy to read and learn.

PreviousDevelopment SetupNextYour First Skill

Last updated 3 years ago

Was this helpful?

If you are new to Python or programming in general there are lots of resources online to catering to all experience levels. Once you have the basics, a simple Skill can be a great way to try them out in a real project.

Mycroft uses Python 3 and as of December 2019 supports Python 3.5-3.7.

The following are a collection of resources recommended by members of our Community. If you know of other great resources please let us know in the .

Video Tutorials

Python Virtual Environments

Python Package Management

Books

Think Python

Automate the Boring Stuff with Python

Courses

FreeCodeCamp.org Video Tutorial

LearnPython.org by DataCamp

TutorialsPoint Python Tutorial

Documentation

" is an introduction to Python programming for beginners. It starts with basic concepts of programming, and is carefully designed to define all terms when they are first used and to develop each new concept in a logical progression. Larger pieces, like recursion and object-oriented programming are divided into a sequence of smaller steps and introduced over the course of several chapters."

The book is available to purchase through normal retailers, or to download for free from

"In , you'll learn how to use Python to write programs that do in minutes what would take you hours to do by hand-no prior programming experience required. Once you've mastered the basics of programming, you'll create Python programs that effortlessly perform useful and impressive feats of automation."

will give you a full introduction into all of the core concepts in python. The entire video runs for almost 4 and a half hours so better grab a coffee before you get started!

walks you through all the basics of Python and provides interactive coding challenges to put it into practice.

covering both the basics and more advanced topics.

Books and courses are great to get started but once you have the basics you often just need good documentation to point you in the right direction. The official Python documentation can be found at:

For an alternative view of this same documentation, try .

If you're a little more visual, check out this that covers all the basics.

Think Python
Green Tea Press
Automate the Boring Stuff with Python
This video tutorial
The LearnPython.org interactive tutorial
A comprehensive written tutorial from TutorialsPoint.com
https://docs.python.org/3/
DevDocs.io
Python Cheat Sheet
Dev channel of Mycroft Chat
Video Tutorial: Python Virtual Environments
Video Tutorial: Python Package Management