{"id":31749,"date":"2024-11-01T09:02:27","date_gmt":"2024-11-01T09:02:27","guid":{"rendered":"http:\/\/atmokpo.com\/w\/?p=31749"},"modified":"2024-11-01T12:30:43","modified_gmt":"2024-11-01T12:30:43","slug":"07%ec%9e%a5-flying-with-python","status":"publish","type":"post","link":"https:\/\/atmokpo.com\/w\/31749\/","title":{"rendered":"07: Flying with Python"},"content":{"rendered":"\n<p>In this course, we will explore how to utilize the advanced features of Python to solve complex problems and write efficient code. The main topics we will cover include various programming paradigms, advanced data structures, and the powerful built-in module functionalities that Python offers.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">1. Advanced Programming Paradigms<\/h2>\n\n\n\n<p>Python is a multi-paradigm programming language. It supports procedural, object-oriented, and functional programming, allowing you to take advantage of each as needed. In this section, we will focus primarily on advanced techniques in object-oriented programming (OOP) and functional programming.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">1.1 In-depth Object-Oriented Programming<\/h3>\n\n\n\n<p>The basic concept of OOP starts with the understanding of classes and objects. However, to design more complex programs, you need to know other concepts as well.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">1.1.1 Inheritance and Polymorphism<\/h4>\n\n\n\n<p>Inheritance is a feature where a new class inherits the properties and methods of an existing class. By using inheritance, the reusability of the code can be enhanced. Polymorphism allows for the same interface to be used for objects of different classes.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>class Animal:\n    def speak(self):\n        pass\n\nclass Dog(Animal):\n    def speak(self):\n        return \"Woof!\"\n\nclass Cat(Animal):\n    def speak(self):\n        return \"Meow!\"\n\ndef animal_sound(animal):\n    print(animal.speak())\n\ndog = Dog()\ncat = Cat()\n\nanimal_sound(dog)  # Woof!\nanimal_sound(cat)  # Meow!\n<\/code><\/pre>\n\n\n\n<p>The above example is an illustration of polymorphism. By having the <code>speak()<\/code> method in different class objects, it can be called in the same way within the <code>animal_sound<\/code> function.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">1.1.2 Abstraction and Interfaces<\/h4>\n\n\n\n<p>An abstract class is a class that defines a basic behavior, housing one or more abstract methods. An interface can be thought of as a collection of these abstract methods. In Python, abstraction is implemented through the <code>ABC<\/code> class of the <code>abc<\/code> module.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>from abc import ABC, abstractmethod\n\nclass Shape(ABC):\n    @abstractmethod\n    def area(self):\n        pass\n\nclass Circle(Shape):\n    def __init__(self, radius):\n        self.radius = radius\n\n    def area(self):\n        return 3.1415 * self.radius * self.radius\n\ncircle = Circle(5)\nprint(circle.area())  # 78.5375\n<\/code><\/pre>\n\n\n\n<p>In the above example, the <code>Shape<\/code> class is an abstract class that defines the abstract method <code>area<\/code>. The <code>Circle<\/code> class inherits from <code>Shape<\/code> and implements the <code>area<\/code> method.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">1.2 Functional Programming<\/h3>\n\n\n\n<p>Functional programming uses pure functions to reduce side effects and implements complex behaviors through function composition. Python provides strong functional tools to encourage this style.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">1.2.1 Lambda Functions<\/h4>\n\n\n\n<p>Lambda functions are anonymous functions defined typically with a single expression. They are useful for writing short and concise functions.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>add = lambda x, y: x + y\nprint(add(5, 3))  # 8\n<\/code><\/pre>\n\n\n\n<p>In the above example, <code>lambda<\/code> defines an anonymous function that adds two parameters.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">1.2.2 Higher-Order Functions<\/h4>\n\n\n\n<p>A higher-order function is a function that takes another function as an argument or returns it. Python&#8217;s <code>map<\/code>, <code>filter<\/code>, and <code>reduce<\/code> are examples that utilize these functional programming techniques.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>numbers = [1, 2, 3, 4, 5]\nsquared = map(lambda x: x**2, numbers)\nprint(list(squared))  # [1, 4, 9, 16, 25]\n<\/code><\/pre>\n\n\n\n<p>In the above example, the <code>map<\/code> function applies the lambda function to each element in the list to create a new iterator.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">2. Advanced Data Structures<\/h2>\n\n\n\n<p>Utilizing advanced data structures allows for more efficient handling of complex data operations. Here we will address more complex data structures beyond basic types like lists and dictionaries.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">2.1 Collections Module<\/h3>\n\n\n\n<p>The Python <code>collections<\/code> module provides several data structures with specialized purposes. Let\u2019s take a look at a few of them.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">2.1.1 defaultdict<\/h4>\n\n\n\n<p><code>defaultdict<\/code> is a dictionary that automatically creates a default value when a non-existent key is referenced.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>from collections import defaultdict\n\nfruit_counter = defaultdict(int)\nfruits = ['apple', 'banana', 'apple', 'orange', 'banana', 'apple']\n\nfor fruit in fruits:\n    fruit_counter[fruit] += 1\n\nprint(fruit_counter)  # defaultdict(, {'apple': 3, 'banana': 2, 'orange': 1})\n<\/code><\/pre>\n\n\n\n<p>This example demonstrates how to easily count each fruit using <code>defaultdict<\/code>.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">2.1.2 namedtuple<\/h4>\n\n\n\n<p><code>namedtuple<\/code> is like a tuple but immutable while allowing access to fields by name which enhances the readability of the code.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>from collections import namedtuple\n\nPoint = namedtuple('Point', ['x', 'y'])\np = Point(10, 20)\n\nprint(p.x, p.y)  # 10 20\n<\/code><\/pre>\n\n\n\n<p>By using <code>namedtuple<\/code>, fields can be accessed by name, allowing for clearer code.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">2.2 Heap Queue Module<\/h3>\n\n\n\n<p>The <code>heapq<\/code> module implements a heap queue algorithm, enabling a list to be used as a priority queue.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>import heapq\n\nnumbers = [1, 3, 5, 7, 9, 2, 4, 6, 8, 0]\nheapq.heapify(numbers)  # Convert list to a priority queue\n\nsmallest = heapq.heappop(numbers)\nprint(smallest)  # 0\n<\/code><\/pre>\n\n\n\n<p>This allows for quick extraction of the minimum value in the data using a priority queue.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">3. Utilizing Advanced Built-in Modules<\/h2>\n\n\n\n<p>The rich built-in modules of Python provide various functionalities. Here, we will introduce some modules for advanced tasks.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">3.1 itertools Module<\/h3>\n\n\n\n<p>The <code>itertools<\/code> module offers useful functions for dealing with iterators. It is a powerful tool for repetitive data processing.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">3.1.1 Combinations and Permutations<\/h4>\n\n\n\n<p>Combinations and permutations provide various methods for selecting elements from data sets.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>from itertools import combinations, permutations\n\ndata = ['A', 'B', 'C']\n\n# Combinations\nprint(list(combinations(data, 2)))  # [('A', 'B'), ('A', 'C'), ('B', 'C')]\n\n# Permutations\nprint(list(permutations(data, 2)))  # [('A', 'B'), ('A', 'C'), ('B', 'A'), ('B', 'C'), ('C', 'A'), ('C', 'B')]\n<\/code><\/pre>\n\n\n\n<p>These functions allow for the quick generation of various list combinations.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">3.1.2 Handling Iterator Collections<\/h4>\n\n\n\n<p>This module provides tools for various iterations such as infinite loops, counting increments, and periodic repetitions.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>from itertools import count, cycle\n\n# Infinite count\nfor i in count(10):\n    if i > 15:\n        break\n    print(i, end=' ')  # 10 11 12 13 14 15\n\nprint()  # New line\n\n# Periodic repetition\nfor i, char in zip(range(10), cycle('ABC')):\n    print(char, end=' ')  # A B C A B C A B C A\n<\/code><\/pre>\n\n\n\n<p>The above example shows how to utilize infinite loops and periodic repetitions.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">3.2 functools Module<\/h3>\n\n\n\n<p>The <code>functools<\/code> module provides functional programming tools, offering various utilities particularly useful for handling functions.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">3.2.1 lru_cache Decorator<\/h4>\n\n\n\n<p>The <code>@lru_cache<\/code> decorator is used for memoization, storing computed results to avoid recalculating for the same input.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>from functools import lru_cache\n\n@lru_cache(maxsize=None)\ndef fibonacci(n):\n    if n <= 1:\n        return n\n    return fibonacci(n-1) + fibonacci(n-2)\n\nprint([fibonacci(n) for n in range(10)])  # [0, 1, 1, 2, 3, 5, 8, 13, 21, 34]\n<\/code><\/pre>\n\n\n\n<p>In the code above, the computed results for the Fibonacci sequence are stored in the cache, saving execution time for the same input.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Conclusion<\/h2>\n\n\n\n<p>In this article, we have discussed advanced topics in Python. By effectively utilizing these features, complex problems can be solved efficiently, and high-level code can be written. Let's delve into more topics in the next course and advance towards becoming Python experts.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In this course, we will explore how to utilize the advanced features of Python to solve complex problems and write efficient code. The main topics we will cover include various programming paradigms, advanced data structures, and the powerful built-in module functionalities that Python offers. 1. Advanced Programming Paradigms Python is a multi-paradigm programming language. It &hellip; <a href=\"https:\/\/atmokpo.com\/w\/31749\/\" class=\"more-link\">\ub354 \ubcf4\uae30<span class=\"screen-reader-text\"> &#8220;07: Flying with Python&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[98],"tags":[95],"class_list":["post-31749","post","type-post","status-publish","format-standard","hentry","category--en","tag--en"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.2 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>07: Flying with Python - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/atmokpo.com\/w\/31749\/\" \/>\n<meta property=\"og:locale\" content=\"ko_KR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"07: Flying with Python - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\" \/>\n<meta property=\"og:description\" content=\"In this course, we will explore how to utilize the advanced features of Python to solve complex problems and write efficient code. The main topics we will cover include various programming paradigms, advanced data structures, and the powerful built-in module functionalities that Python offers. 1. Advanced Programming Paradigms Python is a multi-paradigm programming language. It &hellip; \ub354 \ubcf4\uae30 &quot;07: Flying with Python&quot;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/atmokpo.com\/w\/31749\/\" \/>\n<meta property=\"og:site_name\" content=\"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\" \/>\n<meta property=\"article:published_time\" content=\"2024-11-01T09:02:27+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-11-01T12:30:43+00:00\" \/>\n<meta name=\"author\" content=\"root\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@bebubo4\" \/>\n<meta name=\"twitter:site\" content=\"@bebubo4\" \/>\n<meta name=\"twitter:label1\" content=\"\uae00\uc4f4\uc774\" \/>\n\t<meta name=\"twitter:data1\" content=\"root\" \/>\n\t<meta name=\"twitter:label2\" content=\"\uc608\uc0c1 \ub418\ub294 \ud310\ub3c5 \uc2dc\uac04\" \/>\n\t<meta name=\"twitter:data2\" content=\"5\ubd84\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/atmokpo.com\/w\/31749\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/atmokpo.com\/w\/31749\/\"},\"author\":{\"name\":\"root\",\"@id\":\"https:\/\/atmokpo.com\/w\/#\/schema\/person\/91b6b3b138fbba0efb4ae64b1abd81d7\"},\"headline\":\"07: Flying with Python\",\"datePublished\":\"2024-11-01T09:02:27+00:00\",\"dateModified\":\"2024-11-01T12:30:43+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/atmokpo.com\/w\/31749\/\"},\"wordCount\":718,\"publisher\":{\"@id\":\"https:\/\/atmokpo.com\/w\/#organization\"},\"keywords\":[\"\ud30c\uc774\uc36c\uac15\uc88c\"],\"articleSection\":[\"Python Study\"],\"inLanguage\":\"ko-KR\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/atmokpo.com\/w\/31749\/\",\"url\":\"https:\/\/atmokpo.com\/w\/31749\/\",\"name\":\"07: Flying with Python - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\",\"isPartOf\":{\"@id\":\"https:\/\/atmokpo.com\/w\/#website\"},\"datePublished\":\"2024-11-01T09:02:27+00:00\",\"dateModified\":\"2024-11-01T12:30:43+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/atmokpo.com\/w\/31749\/#breadcrumb\"},\"inLanguage\":\"ko-KR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/atmokpo.com\/w\/31749\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/atmokpo.com\/w\/31749\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"\ud648\",\"item\":\"https:\/\/atmokpo.com\/w\/en\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"07: Flying with Python\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/atmokpo.com\/w\/#website\",\"url\":\"https:\/\/atmokpo.com\/w\/\",\"name\":\"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/atmokpo.com\/w\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/atmokpo.com\/w\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"ko-KR\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/atmokpo.com\/w\/#organization\",\"name\":\"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\",\"url\":\"https:\/\/atmokpo.com\/w\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\/\/atmokpo.com\/w\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/atmokpo.com\/w\/wp-content\/uploads\/2024\/11\/logo.png\",\"contentUrl\":\"https:\/\/atmokpo.com\/w\/wp-content\/uploads\/2024\/11\/logo.png\",\"width\":400,\"height\":400,\"caption\":\"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\"},\"image\":{\"@id\":\"https:\/\/atmokpo.com\/w\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/x.com\/bebubo4\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/atmokpo.com\/w\/#\/schema\/person\/91b6b3b138fbba0efb4ae64b1abd81d7\",\"name\":\"root\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\/\/atmokpo.com\/w\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/708197b41fc6435a7ce22d951b25d4a47e9e904270cb1f04682d4f025066f80c?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/708197b41fc6435a7ce22d951b25d4a47e9e904270cb1f04682d4f025066f80c?s=96&d=mm&r=g\",\"caption\":\"root\"},\"sameAs\":[\"http:\/\/atmokpo.com\/w\"],\"url\":\"https:\/\/atmokpo.com\/w\/author\/root\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"07: Flying with Python - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","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:\/\/atmokpo.com\/w\/31749\/","og_locale":"ko_KR","og_type":"article","og_title":"07: Flying with Python - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","og_description":"In this course, we will explore how to utilize the advanced features of Python to solve complex problems and write efficient code. The main topics we will cover include various programming paradigms, advanced data structures, and the powerful built-in module functionalities that Python offers. 1. Advanced Programming Paradigms Python is a multi-paradigm programming language. It &hellip; \ub354 \ubcf4\uae30 \"07: Flying with Python\"","og_url":"https:\/\/atmokpo.com\/w\/31749\/","og_site_name":"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","article_published_time":"2024-11-01T09:02:27+00:00","article_modified_time":"2024-11-01T12:30:43+00:00","author":"root","twitter_card":"summary_large_image","twitter_creator":"@bebubo4","twitter_site":"@bebubo4","twitter_misc":{"\uae00\uc4f4\uc774":"root","\uc608\uc0c1 \ub418\ub294 \ud310\ub3c5 \uc2dc\uac04":"5\ubd84"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/atmokpo.com\/w\/31749\/#article","isPartOf":{"@id":"https:\/\/atmokpo.com\/w\/31749\/"},"author":{"name":"root","@id":"https:\/\/atmokpo.com\/w\/#\/schema\/person\/91b6b3b138fbba0efb4ae64b1abd81d7"},"headline":"07: Flying with Python","datePublished":"2024-11-01T09:02:27+00:00","dateModified":"2024-11-01T12:30:43+00:00","mainEntityOfPage":{"@id":"https:\/\/atmokpo.com\/w\/31749\/"},"wordCount":718,"publisher":{"@id":"https:\/\/atmokpo.com\/w\/#organization"},"keywords":["\ud30c\uc774\uc36c\uac15\uc88c"],"articleSection":["Python Study"],"inLanguage":"ko-KR"},{"@type":"WebPage","@id":"https:\/\/atmokpo.com\/w\/31749\/","url":"https:\/\/atmokpo.com\/w\/31749\/","name":"07: Flying with Python - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","isPartOf":{"@id":"https:\/\/atmokpo.com\/w\/#website"},"datePublished":"2024-11-01T09:02:27+00:00","dateModified":"2024-11-01T12:30:43+00:00","breadcrumb":{"@id":"https:\/\/atmokpo.com\/w\/31749\/#breadcrumb"},"inLanguage":"ko-KR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/atmokpo.com\/w\/31749\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/atmokpo.com\/w\/31749\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"\ud648","item":"https:\/\/atmokpo.com\/w\/en\/"},{"@type":"ListItem","position":2,"name":"07: Flying with Python"}]},{"@type":"WebSite","@id":"https:\/\/atmokpo.com\/w\/#website","url":"https:\/\/atmokpo.com\/w\/","name":"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","description":"","publisher":{"@id":"https:\/\/atmokpo.com\/w\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/atmokpo.com\/w\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"ko-KR"},{"@type":"Organization","@id":"https:\/\/atmokpo.com\/w\/#organization","name":"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","url":"https:\/\/atmokpo.com\/w\/","logo":{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/atmokpo.com\/w\/#\/schema\/logo\/image\/","url":"https:\/\/atmokpo.com\/w\/wp-content\/uploads\/2024\/11\/logo.png","contentUrl":"https:\/\/atmokpo.com\/w\/wp-content\/uploads\/2024\/11\/logo.png","width":400,"height":400,"caption":"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8"},"image":{"@id":"https:\/\/atmokpo.com\/w\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/x.com\/bebubo4"]},{"@type":"Person","@id":"https:\/\/atmokpo.com\/w\/#\/schema\/person\/91b6b3b138fbba0efb4ae64b1abd81d7","name":"root","image":{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/atmokpo.com\/w\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/708197b41fc6435a7ce22d951b25d4a47e9e904270cb1f04682d4f025066f80c?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/708197b41fc6435a7ce22d951b25d4a47e9e904270cb1f04682d4f025066f80c?s=96&d=mm&r=g","caption":"root"},"sameAs":["http:\/\/atmokpo.com\/w"],"url":"https:\/\/atmokpo.com\/w\/author\/root\/"}]}},"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack-related-posts":[],"_links":{"self":[{"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/posts\/31749","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/comments?post=31749"}],"version-history":[{"count":2,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/posts\/31749\/revisions"}],"predecessor-version":[{"id":38057,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/posts\/31749\/revisions\/38057"}],"wp:attachment":[{"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/media?parent=31749"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/categories?post=31749"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/tags?post=31749"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}