{"id":81871,"date":"2021-04-01T10:40:00","date_gmt":"2021-04-01T14:40:00","guid":{"rendered":"https:\/\/ibkrcampus.com\/?p=81871"},"modified":"2022-11-21T09:47:17","modified_gmt":"2022-11-21T14:47:17","slug":"object-oriented-programming-oop-in-python-part-iv","status":"publish","type":"post","link":"https:\/\/www.interactivebrokers.com\/campus\/ibkr-quant-news\/object-oriented-programming-oop-in-python-part-iv\/","title":{"rendered":"Object Oriented Programming (OOP) in Python \u2013 Part IV"},"content":{"rendered":"\n<p><em>Get started with&nbsp;<a href=\"\/campus\/ibkr-quant-news\/object-oriented-programming-oop-in-python-part-i\/\">Part I<\/a>,&nbsp;&nbsp;<a href=\"\/campus\/ibkr-quant-news\/object-oriented-programming-oop-in-python-part-ii\/\">Part II<\/a><\/em> <em>and <a href=\"\/campus\/ibkr-quant-news\/object-oriented-programming-oop-in-python-part-iii\/\">Part III<\/a>.<\/em><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"what-are-classes-and-their-objects\"><strong>What are classes and their objects?<\/strong><\/h2>\n\n\n\n<p>Let&#8217;s continue with the example of a car. If we think in abstract terms, a car is nothing but the replication of an abstract idea. That is, a car itself is a generic term used to define a particular type of vehicle. In other words, it is one of the classes of vehicles. In programming terminology, we represent this abstract idea by a&nbsp;<strong>class<\/strong>.<\/p>\n\n\n\n<p>Now, let&#8217;s think for a minute. If we say that a car is a concept, then what do we call a particular car, such as Toyota Corolla (or any of your favourite ones), what is it? As you might have guessed, it is an&nbsp;<strong>object<\/strong>&nbsp;of the car. And what is a car? It is a class (probably under the vehicle universe).<\/p>\n\n\n\n<p>If we take an abstract look, we find that these cars are nothing but the replication of one abstract thing (idea) with different attributes and functions. In programming parlance, this thing is&nbsp;<em>class<\/em>. In other words, the concept of a car provides us with a template or a blueprint from which we can define\/create various objects of the car.<\/p>\n\n\n\n<p><em>Can you try to think of some other classes and their objects?<\/em><\/p>\n\n\n\n<p><strong>Below are some examples:<\/strong><\/p>\n\n\n\n<table>\n<tbody>\n<tr>\n<td>\n<p><strong>Class<\/strong><\/p>\n<\/td>\n<td>\n<p><strong>Object<\/strong><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p><span style=\"font-weight: 400;\">Mobile<\/span><\/p>\n<\/td>\n<td>\n<p><span style=\"font-weight: 400;\">iPhone X<\/span><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p><span style=\"font-weight: 400;\">City<\/span><\/p>\n<\/td>\n<td>\n<p><span style=\"font-weight: 400;\">Mumbai<\/span><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p><span style=\"font-weight: 400;\">Person<\/span><\/p>\n<\/td>\n<td>\n<p><span style=\"font-weight: 400;\">Mr Bean<\/span><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p><span style=\"font-weight: 400;\">Bike<\/span><\/p>\n<\/td>\n<td>\n<p><span style=\"font-weight: 400;\">R 18<\/span><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n\n\n\n<p>At this juncture, I firmly assume that I was able to convey the idea of classes and objects to you. If not, do let me know in a comment on our blog (via the link below).<\/p>\n\n\n\n<p>It&#8217;s time to learn to implement these newly learned concepts in Python. The below code shows a class definition in Python.<\/p>\n\n\n\n<p style=\"background-color:#fcfcdb;font-size:11px\" class=\"has-background\">    \nclass Car:<br>\n    pass\n<\/p>\n\n\n\n<p>We define a class with the help of a keyword&nbsp;<code>class<\/code>, followed by the name of the class, and we end the sentence with&nbsp;<code>:<\/code>. The body of the class should contain its attributes and functions.<\/p>\n\n\n\n<p>However, we define the class&nbsp;<code>Car<\/code>&nbsp;with an empty body represented by the keyword&nbsp;<code>pass<\/code>. In the OOP paradigm, functions that go within the class are referred to as methods; now onwards, I will refer to functions as methods.<\/p>\n\n\n\n<p>Once we have a class defined, we can create its instances, known as&nbsp;<em>objects<\/em>. The class&nbsp;<code>Car<\/code>&nbsp;works as a template to create new objects, as shown in the example below:<\/p>\n\n\n\n<p style=\"background-color:#fcfcdb;font-size:11px\" class=\"has-background\">    \ncar_1 = Car()<br>\ncar_2 = Car()\n<\/p>\n\n\n\n<p>Often when we create an object of a class, we assign it to some variable. That variable is called the object of the class. Here, in our example,&nbsp;<code>car_1<\/code>&nbsp;and&nbsp;<code>car_2<\/code>&nbsp;are examples of the class&nbsp;<code>Car<\/code>. This process is also known as the&nbsp;<strong>instantiating<\/strong>&nbsp;of an object. These objects are also known as&nbsp;<strong>class instances<\/strong>.<\/p>\n\n\n\n<p>Each of these objects can have different properties, and they can be set as follows:<\/p>\n\n\n\n<p style=\"background-color:#fcfcdb;font-size:11px\" class=\"has-background\">    \ncar_1.colour = &#8216;Carbon Black&#8217;<br>\ncar_2.colour = &#8216;Magma Grey&#8217;\n<\/p>\n\n\n\n<p>Now, both objects have the&nbsp;<code>colour<\/code>&nbsp;attribute. And if we are to print it, we would write as follows:<\/p>\n\n\n\n<p style=\"background-color:#fcfcdb;font-size:11px\" class=\"has-background\">    \nprint(&#8216;The colour of Car 1 is &#8216;, car_1.colour)<br>\nprint(&#8216;The colour of Car 2 is &#8216;, car_2.colour)\n<\/p>\n\n\n\n<p>And the output we will get is the following:<\/p>\n\n\n\n<p style=\"background-color:#fcfcdb;font-size:11px\" class=\"has-background\">    \nThe colour of Car 1 is Carbon Black<br>\nThe colour of Car 2 is Magma Grey\n<\/p>\n\n\n\n<p>So far, we have created a class&nbsp;<code>Car<\/code>&nbsp;and its objects&nbsp;<code>car_1<\/code>&nbsp;and&nbsp;<code>car_2<\/code>. However, currently, the&nbsp;<code>Car<\/code>&nbsp;class in its current form can hardly be mapped to its real-world counterpart. For example, we know that every car will have certain features in common, like colour, number of types, number of seats, etc., and so some functions. Hence, instead of defining an empty class, we can define a class which encompasses these common attributes and functions.<\/p>\n\n\n\n<p><em>Stay tuned for the next installment in which Jay will discuss attributes and methods.<\/em><\/p>\n\n\n\n<p><em>Visit QuantInsti to read more about this research:&nbsp;<a href=\"https:\/\/blog.quantinsti.com\/object-oriented-programming-python\/\">https:\/\/blog.quantinsti.com\/object-oriented-programming-python\/<\/a>.<\/em><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Join Jay Parmar for a tutorial on classes and their objects and learn how to implement these concepts in Python.<\/p>\n","protected":false},"author":328,"featured_media":44932,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[339,343,349,338,350,341,344],"tags":[4873,9305,865,9306,1224,9356,595,6810,9418],"contributors-categories":[13654],"class_list":{"0":"post-81871","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-data-science","8":"category-programing-languages","9":"category-python-development","10":"category-ibkr-quant-news","11":"category-quant-asia-pacific","12":"category-quant-development","13":"category-quant-regions","14":"tag-backtesting","15":"tag-functional-programming","16":"tag-github","17":"tag-object-oriented-programming","18":"tag-pandas","19":"tag-procedural-programming","20":"tag-python","21":"tag-sklearn","22":"tag-zipline","23":"contributors-categories-quantinsti"},"pp_statuses_selecting_workflow":false,"pp_workflow_action":"current","pp_status_selection":"publish","acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v26.9 (Yoast SEO v27.4) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Object Oriented Programming (OOP) in Python \u2013 Part IV<\/title>\n<meta name=\"description\" content=\"Join Jay Parmar for a tutorial on classes and their objects and learn how to implement these concepts in Python.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.interactivebrokers.com\/campus\/wp-json\/wp\/v2\/posts\/81871\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Object Oriented Programming (OOP) in Python \u2013 Part IV | IBKR Quant Blog\" \/>\n<meta property=\"og:description\" content=\"Join Jay Parmar for a tutorial on classes and their objects and learn how to implement these concepts in Python.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.interactivebrokers.com\/campus\/ibkr-quant-news\/object-oriented-programming-oop-in-python-part-iv\/\" \/>\n<meta property=\"og:site_name\" content=\"IBKR Campus US\" \/>\n<meta property=\"article:published_time\" content=\"2021-04-01T14:40:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-11-21T14:47:17+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.interactivebrokers.com\/campus\/wp-content\/uploads\/sites\/2\/2020\/05\/python-mag-glass.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"900\" \/>\n\t<meta property=\"og:image:height\" content=\"550\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Jay Parmar\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Jay Parmar\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\n\t    \"@context\": \"https:\\\/\\\/schema.org\",\n\t    \"@graph\": [\n\t        {\n\t            \"@type\": \"NewsArticle\",\n\t            \"@id\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/ibkr-quant-news\\\/object-oriented-programming-oop-in-python-part-iv\\\/#article\",\n\t            \"isPartOf\": {\n\t                \"@id\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/ibkr-quant-news\\\/object-oriented-programming-oop-in-python-part-iv\\\/\"\n\t            },\n\t            \"author\": {\n\t                \"name\": \"Jay Parmar\",\n\t                \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/#\\\/schema\\\/person\\\/e77e7794714e57aa7d6e8ec9be051768\"\n\t            },\n\t            \"headline\": \"Object Oriented Programming (OOP) in Python \u2013 Part IV\",\n\t            \"datePublished\": \"2021-04-01T14:40:00+00:00\",\n\t            \"dateModified\": \"2022-11-21T14:47:17+00:00\",\n\t            \"mainEntityOfPage\": {\n\t                \"@id\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/ibkr-quant-news\\\/object-oriented-programming-oop-in-python-part-iv\\\/\"\n\t            },\n\t            \"wordCount\": 671,\n\t            \"publisher\": {\n\t                \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/#organization\"\n\t            },\n\t            \"image\": {\n\t                \"@id\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/ibkr-quant-news\\\/object-oriented-programming-oop-in-python-part-iv\\\/#primaryimage\"\n\t            },\n\t            \"thumbnailUrl\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2020\\\/05\\\/python-mag-glass.jpg\",\n\t            \"keywords\": [\n\t                \"backtesting\",\n\t                \"Functional Programming\",\n\t                \"GitHub\",\n\t                \"Object Oriented Programming\",\n\t                \"Pandas\",\n\t                \"Procedural Programming\",\n\t                \"Python\",\n\t                \"sklearn\",\n\t                \"zipline\"\n\t            ],\n\t            \"articleSection\": [\n\t                \"Data Science\",\n\t                \"Programming Languages\",\n\t                \"Python Development\",\n\t                \"Quant\",\n\t                \"Quant Asia Pacific\",\n\t                \"Quant Development\",\n\t                \"Quant Regions\"\n\t            ],\n\t            \"inLanguage\": \"en-US\"\n\t        },\n\t        {\n\t            \"@type\": \"WebPage\",\n\t            \"@id\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/ibkr-quant-news\\\/object-oriented-programming-oop-in-python-part-iv\\\/\",\n\t            \"url\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/ibkr-quant-news\\\/object-oriented-programming-oop-in-python-part-iv\\\/\",\n\t            \"name\": \"Object Oriented Programming (OOP) in Python \u2013 Part IV | IBKR Quant Blog\",\n\t            \"isPartOf\": {\n\t                \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/#website\"\n\t            },\n\t            \"primaryImageOfPage\": {\n\t                \"@id\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/ibkr-quant-news\\\/object-oriented-programming-oop-in-python-part-iv\\\/#primaryimage\"\n\t            },\n\t            \"image\": {\n\t                \"@id\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/ibkr-quant-news\\\/object-oriented-programming-oop-in-python-part-iv\\\/#primaryimage\"\n\t            },\n\t            \"thumbnailUrl\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2020\\\/05\\\/python-mag-glass.jpg\",\n\t            \"datePublished\": \"2021-04-01T14:40:00+00:00\",\n\t            \"dateModified\": \"2022-11-21T14:47:17+00:00\",\n\t            \"description\": \"Join Jay Parmar for a tutorial on classes and their objects and learn how to implement these concepts in Python.\",\n\t            \"inLanguage\": \"en-US\",\n\t            \"potentialAction\": [\n\t                {\n\t                    \"@type\": \"ReadAction\",\n\t                    \"target\": [\n\t                        \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/ibkr-quant-news\\\/object-oriented-programming-oop-in-python-part-iv\\\/\"\n\t                    ]\n\t                }\n\t            ]\n\t        },\n\t        {\n\t            \"@type\": \"ImageObject\",\n\t            \"inLanguage\": \"en-US\",\n\t            \"@id\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/ibkr-quant-news\\\/object-oriented-programming-oop-in-python-part-iv\\\/#primaryimage\",\n\t            \"url\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2020\\\/05\\\/python-mag-glass.jpg\",\n\t            \"contentUrl\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2020\\\/05\\\/python-mag-glass.jpg\",\n\t            \"width\": 900,\n\t            \"height\": 550,\n\t            \"caption\": \"Python\"\n\t        },\n\t        {\n\t            \"@type\": \"WebSite\",\n\t            \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/#website\",\n\t            \"url\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/\",\n\t            \"name\": \"IBKR Campus US\",\n\t            \"description\": \"Financial Education from Interactive Brokers\",\n\t            \"publisher\": {\n\t                \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/#organization\"\n\t            },\n\t            \"potentialAction\": [\n\t                {\n\t                    \"@type\": \"SearchAction\",\n\t                    \"target\": {\n\t                        \"@type\": \"EntryPoint\",\n\t                        \"urlTemplate\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/?s={search_term_string}\"\n\t                    },\n\t                    \"query-input\": {\n\t                        \"@type\": \"PropertyValueSpecification\",\n\t                        \"valueRequired\": true,\n\t                        \"valueName\": \"search_term_string\"\n\t                    }\n\t                }\n\t            ],\n\t            \"inLanguage\": \"en-US\"\n\t        },\n\t        {\n\t            \"@type\": \"Organization\",\n\t            \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/#organization\",\n\t            \"name\": \"Interactive Brokers\",\n\t            \"alternateName\": \"IBKR\",\n\t            \"url\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/\",\n\t            \"logo\": {\n\t                \"@type\": \"ImageObject\",\n\t                \"inLanguage\": \"en-US\",\n\t                \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/#\\\/schema\\\/logo\\\/image\\\/\",\n\t                \"url\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2024\\\/05\\\/ibkr-campus-logo.jpg\",\n\t                \"contentUrl\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2024\\\/05\\\/ibkr-campus-logo.jpg\",\n\t                \"width\": 669,\n\t                \"height\": 669,\n\t                \"caption\": \"Interactive Brokers\"\n\t            },\n\t            \"image\": {\n\t                \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/#\\\/schema\\\/logo\\\/image\\\/\"\n\t            },\n\t            \"publishingPrinciples\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/about-ibkr-campus\\\/\",\n\t            \"ethicsPolicy\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/cyber-security-notice\\\/\"\n\t        },\n\t        {\n\t            \"@type\": \"Person\",\n\t            \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/#\\\/schema\\\/person\\\/e77e7794714e57aa7d6e8ec9be051768\",\n\t            \"name\": \"Jay Parmar\",\n\t            \"url\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/author\\\/jayparmar\\\/\"\n\t        }\n\t    ]\n\t}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Object Oriented Programming (OOP) in Python \u2013 Part IV","description":"Join Jay Parmar for a tutorial on classes and their objects and learn how to implement these concepts in Python.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.interactivebrokers.com\/campus\/wp-json\/wp\/v2\/posts\/81871\/","og_locale":"en_US","og_type":"article","og_title":"Object Oriented Programming (OOP) in Python \u2013 Part IV | IBKR Quant Blog","og_description":"Join Jay Parmar for a tutorial on classes and their objects and learn how to implement these concepts in Python.","og_url":"https:\/\/www.interactivebrokers.com\/campus\/ibkr-quant-news\/object-oriented-programming-oop-in-python-part-iv\/","og_site_name":"IBKR Campus US","article_published_time":"2021-04-01T14:40:00+00:00","article_modified_time":"2022-11-21T14:47:17+00:00","og_image":[{"width":900,"height":550,"url":"https:\/\/www.interactivebrokers.com\/campus\/wp-content\/uploads\/sites\/2\/2020\/05\/python-mag-glass.jpg","type":"image\/jpeg"}],"author":"Jay Parmar","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Jay Parmar","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"NewsArticle","@id":"https:\/\/www.interactivebrokers.com\/campus\/ibkr-quant-news\/object-oriented-programming-oop-in-python-part-iv\/#article","isPartOf":{"@id":"https:\/\/www.interactivebrokers.com\/campus\/ibkr-quant-news\/object-oriented-programming-oop-in-python-part-iv\/"},"author":{"name":"Jay Parmar","@id":"https:\/\/ibkrcampus.com\/campus\/#\/schema\/person\/e77e7794714e57aa7d6e8ec9be051768"},"headline":"Object Oriented Programming (OOP) in Python \u2013 Part IV","datePublished":"2021-04-01T14:40:00+00:00","dateModified":"2022-11-21T14:47:17+00:00","mainEntityOfPage":{"@id":"https:\/\/www.interactivebrokers.com\/campus\/ibkr-quant-news\/object-oriented-programming-oop-in-python-part-iv\/"},"wordCount":671,"publisher":{"@id":"https:\/\/ibkrcampus.com\/campus\/#organization"},"image":{"@id":"https:\/\/www.interactivebrokers.com\/campus\/ibkr-quant-news\/object-oriented-programming-oop-in-python-part-iv\/#primaryimage"},"thumbnailUrl":"https:\/\/www.interactivebrokers.com\/campus\/wp-content\/uploads\/sites\/2\/2020\/05\/python-mag-glass.jpg","keywords":["backtesting","Functional Programming","GitHub","Object Oriented Programming","Pandas","Procedural Programming","Python","sklearn","zipline"],"articleSection":["Data Science","Programming Languages","Python Development","Quant","Quant Asia Pacific","Quant Development","Quant Regions"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.interactivebrokers.com\/campus\/ibkr-quant-news\/object-oriented-programming-oop-in-python-part-iv\/","url":"https:\/\/www.interactivebrokers.com\/campus\/ibkr-quant-news\/object-oriented-programming-oop-in-python-part-iv\/","name":"Object Oriented Programming (OOP) in Python \u2013 Part IV | IBKR Quant Blog","isPartOf":{"@id":"https:\/\/ibkrcampus.com\/campus\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.interactivebrokers.com\/campus\/ibkr-quant-news\/object-oriented-programming-oop-in-python-part-iv\/#primaryimage"},"image":{"@id":"https:\/\/www.interactivebrokers.com\/campus\/ibkr-quant-news\/object-oriented-programming-oop-in-python-part-iv\/#primaryimage"},"thumbnailUrl":"https:\/\/www.interactivebrokers.com\/campus\/wp-content\/uploads\/sites\/2\/2020\/05\/python-mag-glass.jpg","datePublished":"2021-04-01T14:40:00+00:00","dateModified":"2022-11-21T14:47:17+00:00","description":"Join Jay Parmar for a tutorial on classes and their objects and learn how to implement these concepts in Python.","inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.interactivebrokers.com\/campus\/ibkr-quant-news\/object-oriented-programming-oop-in-python-part-iv\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.interactivebrokers.com\/campus\/ibkr-quant-news\/object-oriented-programming-oop-in-python-part-iv\/#primaryimage","url":"https:\/\/www.interactivebrokers.com\/campus\/wp-content\/uploads\/sites\/2\/2020\/05\/python-mag-glass.jpg","contentUrl":"https:\/\/www.interactivebrokers.com\/campus\/wp-content\/uploads\/sites\/2\/2020\/05\/python-mag-glass.jpg","width":900,"height":550,"caption":"Python"},{"@type":"WebSite","@id":"https:\/\/ibkrcampus.com\/campus\/#website","url":"https:\/\/ibkrcampus.com\/campus\/","name":"IBKR Campus US","description":"Financial Education from Interactive Brokers","publisher":{"@id":"https:\/\/ibkrcampus.com\/campus\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/ibkrcampus.com\/campus\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/ibkrcampus.com\/campus\/#organization","name":"Interactive Brokers","alternateName":"IBKR","url":"https:\/\/ibkrcampus.com\/campus\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/ibkrcampus.com\/campus\/#\/schema\/logo\/image\/","url":"https:\/\/www.interactivebrokers.com\/campus\/wp-content\/uploads\/sites\/2\/2024\/05\/ibkr-campus-logo.jpg","contentUrl":"https:\/\/www.interactivebrokers.com\/campus\/wp-content\/uploads\/sites\/2\/2024\/05\/ibkr-campus-logo.jpg","width":669,"height":669,"caption":"Interactive Brokers"},"image":{"@id":"https:\/\/ibkrcampus.com\/campus\/#\/schema\/logo\/image\/"},"publishingPrinciples":"https:\/\/www.interactivebrokers.com\/campus\/about-ibkr-campus\/","ethicsPolicy":"https:\/\/www.interactivebrokers.com\/campus\/cyber-security-notice\/"},{"@type":"Person","@id":"https:\/\/ibkrcampus.com\/campus\/#\/schema\/person\/e77e7794714e57aa7d6e8ec9be051768","name":"Jay Parmar","url":"https:\/\/www.interactivebrokers.com\/campus\/author\/jayparmar\/"}]}},"jetpack_featured_media_url":"https:\/\/www.interactivebrokers.com\/campus\/wp-content\/uploads\/sites\/2\/2020\/05\/python-mag-glass.jpg","_links":{"self":[{"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/posts\/81871","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/users\/328"}],"replies":[{"embeddable":true,"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/comments?post=81871"}],"version-history":[{"count":0,"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/posts\/81871\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/media\/44932"}],"wp:attachment":[{"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/media?parent=81871"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/categories?post=81871"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/tags?post=81871"},{"taxonomy":"contributors-categories","embeddable":true,"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/contributors-categories?post=81871"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}