Buy my Angular book for building 5+ step by step examples!

Python 3.7 Data Classes — Tutorial by Example

November 21, 2019 | 1 Minute Read

Data classes are a new feature of Python 3.7 that allows you to create classes that contain only fields of data and methods to get or access the fields. They serve as containers for data that can be used by other classes that implement the logic of your application.

First of all, you need to have the latest Python 3.7 version installed on your system. From your terminal, type the following command to start an interactive Python shell:

$ python
Python 3.7.0 (v3.7.0:1bf9cc5093, Jun 27 2018, 04:06:47) [MSC v.1914 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information. 

Next you can use data classes by importing the dataclass decorator from the dataclasses module. For instance, this is a simple example:

from dataclasses import dataclass

class Contact:
    name: str
    email: str
    phone: str

You created a Contact type with the name, email and phone fields of type str.

You can now instances of Contact:

>>> contact = Contact("test","","00 00 00 00")
>>> contact
Contact(name='test', email='', phone='00 00 00 00')

You need to provide the positional arguments: ‘name’, ‘email’, and ‘phone’ or otherwise you’ll get an error. You can also use keyword arguments:

>>> contact1 = Contact(name="test1",email="",phone="+01 00 00 00")
>>> contact1
Contact(name='test1', email='', phone='+01 00 00 00')

Latest Questions and Answers

How to add Bootstrap 4 to my Angular 9 app?
What’s the use of TypeScript 3.8/ECMAScript Private Fields?
How to update/Upgrade Angular 8 to Angular 9 by CLI ng update?
How to Install and Use jQuery with Angular 9?
How to Upload Image Files with Laravel 7 and Angular 9?
What Is Angular 9 ivy?
What’s Alpine.js vs, React, Vue.js and Angular?
How to Use HttpClient Module and Service to Send Ajax/Http Requests in Angular 9?
How to Create a New Angular 9 Project Using npm?