{"id":10001,"date":"2021-07-05T16:56:55","date_gmt":"2021-07-05T16:56:55","guid":{"rendered":"https:\/\/ded9.com\/?p=10001"},"modified":"2025-12-21T12:10:45","modified_gmt":"2025-12-21T12:10:45","slug":"important-basics-to-know-about-python-programming","status":"publish","type":"post","link":"https:\/\/ded9.com\/tr\/important-basics-to-know-about-python-programming\/","title":{"rendered":"Important Basics to Know About Python Programming"},"content":{"rendered":"<p><span style=\"font-size: 12pt;\">Almost All Programmers And Training Sites Believe That Python is a simple programming language because Its Syntax Is Easy To Learn, and beginners can use the concepts they have learned after a few months.\u00a0<\/span><\/p>\n<p>However, Python is best read about important practical concepts that are highly convergent with other languages. In this article, we will mention some of these important concepts.<\/p>\n<h2><span style=\"font-size: 18pt;\">Concepts of object-oriented programming in Python<\/span><\/h2>\n<p>Object-oriented programming (<a href=\"https:\/\/en.wikipedia.org\/wiki\/Object-oriented_programming\" target=\"_blank\" rel=\"noopener\">OOP<\/a>) is a specific type of computer programming in which the programmer defines the data type of a data structure and the types of operations (functions) that can be performed on it. In this way, the data structure becomes an object that contains data and functions.<\/p>\n<p>In addition, programmers can create relationships between one object and another.\u00a0For example, objects can inherit properties from other objects.<\/p>\n<p>One of the main advantages of object-oriented programming paradigms over procedural programming techniques is that they allow developers to use modules without changing them when defining new objects.<\/p>\n<p>A programmer can easily create a new object and inherit most of the properties of an existing object.<\/p>\n<p>This makes object-oriented programming easier.<\/p>\n<p>Most modern programming languages \u200b\u200bsupport the object-oriented paradigm, although some older programming languages, such as Pascal, offer a similar feature.<br \/>\nHigh-level object-oriented programming languages \u200b\u200binclude <a href=\"https:\/\/ded9.com\/how-to-start-learning-java\/\">Java<\/a>, C++, C #, Python, SmallTalk, and more. The paradigm of object-oriented programming is surrounded by essential concepts as follows:<\/p>\n<h3><span style=\"font-size: 14pt;\">Abstraction in Python<\/span><\/h3>\n<p>Abstraction refers to the process of picking standard features of objects and procedures. This concept selects data from a large pool to show the user only the details of that object.<br \/>\nAbstract only &#8220;shows&#8221; basic features and &#8220;hides&#8221; unnecessary information.\u00a0Abstraction helps reduce complexity and improve programmer performance.<\/p>\n<p>For this reason, objectivism is one of the most essential concepts of programming. Hiding information means hiding the details of an object or function. Hiding information is a powerful programming technique because it reduces complexity.<\/p>\n<h3><span style=\"font-size: 14pt;\">Encapsulation in Python<\/span><\/h3>\n<p>Capsulation is the process of combining elements to build a new entity. A procedure is an encapsulation process because it combines a set of computer instructions. Encapsulation is one of the basic concepts of object-oriented programming (OOP). It describes data and methods that operate as a single concept, a class.<\/p>\n<p>This concept is also used to hide an object&#8217;s interior view or state from the outside world. More precisely, only the information needed is shown to the outside world. The general idea of \u200b\u200bthis mechanism is simple.<\/p>\n<p>Suppose you have a trait that is not visible to the outside world of the object, and it is possible to provide this feature to the outside world with methods that make it possible to read or write to the object. In that case, you can hide specific information and the internal state of an object.<\/p>\n<p><img fetchpriority=\"high\" decoding=\"async\" class=\"aligncenter wp-image-10002 size-full\" src=\"https:\/\/ded9.com\/wp-content\/uploads\/2021\/07\/01_781.jpg\" alt=\"Suppose you have a trait that is not visible to the outside world of the object, and it is possible to provide this feature to the outside world with methods that make it possible to read or write to the object. In that case, you can hide specific information and the internal state of an object.\" width=\"588\" height=\"356\" srcset=\"https:\/\/ded9.com\/wp-content\/uploads\/2021\/07\/01_781.jpg 588w, https:\/\/ded9.com\/wp-content\/uploads\/2021\/07\/01_781-300x182.jpg 300w\" sizes=\"(max-width: 588px) 100vw, 588px\" \/><\/p>\n<h3 class=\"rtejustify\"><span style=\"font-size: 14pt;\">Inheritance in Python<\/span><\/h3>\n<p class=\"rtejustify\">Inheritance is how one class acquires ownership or, more accurately, inherits from another class. For example, the child inherits the traits of his parents. Using inheritance, we can use fields and methods within a two-tier class. Thus, inheritance facilitates reusability and makes object-oriented programming more practical.<\/p>\n<h2 class=\"rtejustify\"><span style=\"font-size: 18pt;\">Types of inheritance<\/span><\/h2>\n<h3 class=\"rtejustify\"><span style=\"font-size: 14pt;\">Single inheritance<\/span><\/h3>\n<p class=\"rtejustify\">Single inheritance allows a derived class to inherit traits and behavior from a parent class. In simpler terms, single inheritance allows a derived class to inherit the properties and behavior of a base class, thus allowing the code to be reused and new features to be added to the existing code. This allows us to have more accurate code and not have to write duplicate code.<\/p>\n<p class=\"rtejustify\">In single inheritance, it extends to another class (only one class).<\/p>\n<p class=\"rtejustify\"><img decoding=\"async\" class=\"aligncenter wp-image-10005 size-full\" src=\"https:\/\/ded9.com\/wp-content\/uploads\/2021\/07\/02_848-1.jpg\" alt=\"In single inheritance, it extends to another class (only one class).\" width=\"452\" height=\"524\" srcset=\"https:\/\/ded9.com\/wp-content\/uploads\/2021\/07\/02_848-1.jpg 452w, https:\/\/ded9.com\/wp-content\/uploads\/2021\/07\/02_848-1-259x300.jpg 259w\" sizes=\"(max-width: 452px) 100vw, 452px\" \/><\/p>\n<p class=\"rtejustify\">In the figure above, class B inherits the properties only from class A. Class A is a superclass, and Class B is a subclass.<\/p>\n<h3 class=\"rtejustify\"><span style=\"font-size: 14pt;\">Multiple Inheritance<\/span><\/h3>\n<p class=\"rtejustify\">Multiple inheritance is a feature of object-oriented programming languages in which an object or class can inherit the properties and attributes of one or more parent objects.<\/p>\n<p class=\"rtejustify\"><img decoding=\"async\" class=\"aligncenter wp-image-10006 size-full\" src=\"https:\/\/ded9.com\/wp-content\/uploads\/2021\/07\/03_711.jpg\" alt=\"Multiple inheritance is a feature of object-oriented programming languages in which an object or class can inherit the properties and attributes of one or more parent objects.\" width=\"600\" height=\"297\" srcset=\"https:\/\/ded9.com\/wp-content\/uploads\/2021\/07\/03_711.jpg 600w, https:\/\/ded9.com\/wp-content\/uploads\/2021\/07\/03_711-300x149.jpg 300w\" sizes=\"(max-width: 600px) 100vw, 600px\" \/><\/p>\n<p class=\"rtejustify\">In the figure above, class C inherits the properties of class A and class B.<\/p>\n<h3 class=\"rtejustify\"><span style=\"font-size: 14pt;\">Multilevel Inheritance<\/span><\/h3>\n<p class=\"rtejustify\">In multilevel inheritance, a class can inherit from a derived class, which becomes the base class for the new class.<\/p>\n<p class=\"rtejustify\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-10007 size-full\" src=\"https:\/\/ded9.com\/wp-content\/uploads\/2021\/07\/04_583.jpg\" alt=\"In multilevel inheritance, a class can inherit from a derived class, which becomes the base class for the new class.\" width=\"404\" height=\"740\" srcset=\"https:\/\/ded9.com\/wp-content\/uploads\/2021\/07\/04_583.jpg 404w, https:\/\/ded9.com\/wp-content\/uploads\/2021\/07\/04_583-164x300.jpg 164w\" sizes=\"(max-width: 404px) 100vw, 404px\" \/><\/p>\n<p class=\"rtejustify\">As the figure above shows, class C is subclass B, and B is subclass A.<\/p>\n<h3 class=\"rtejustify\"><span style=\"font-size: 14pt;\">Hierarchical Inheritance<\/span><\/h3>\n<p class=\"rtejustify\">This concept is called hierarchical inheritance, in which multiple classes inherit from the same class. In other words, several subclasses inherit from one class. In hierarchical inheritance, a parent class can have multiple child classes.<\/p>\n<p class=\"rtejustify\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-10008 size-full\" src=\"https:\/\/ded9.com\/wp-content\/uploads\/2021\/07\/05_477.jpg\" alt=\"This concept is called hierarchical inheritance, in which multiple classes inherit from the same class. In other words, several subclasses inherit from one class. In hierarchical inheritance, a parent class can have multiple child classes.\" width=\"576\" height=\"311\" srcset=\"https:\/\/ded9.com\/wp-content\/uploads\/2021\/07\/05_477.jpg 576w, https:\/\/ded9.com\/wp-content\/uploads\/2021\/07\/05_477-300x162.jpg 300w\" sizes=\"(max-width: 576px) 100vw, 576px\" \/><\/p>\n<p class=\"rtejustify\">As the figure above shows, classes B, C, and D inherit from class A.<\/p>\n<h3 class=\"rtejustify\"><span style=\"font-size: 14pt;\">Hybrid Inheritance<\/span><\/h3>\n<p class=\"rtejustify\">Combined inheritance is another type of inheritance. A class hierarchically inherits two or more classes, in which case classes can inherit from the same parent class in a hierarchical inheritance.<\/p>\n<p class=\"rtejustify\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-10009 size-full\" src=\"https:\/\/ded9.com\/wp-content\/uploads\/2021\/07\/06_388.jpg\" alt=\"Combined inheritance is another type of inheritance. A class hierarchically inherits two or more classes, in which case classes can inherit from the same parent class in a hierarchical inheritance.\" width=\"580\" height=\"413\" srcset=\"https:\/\/ded9.com\/wp-content\/uploads\/2021\/07\/06_388.jpg 580w, https:\/\/ded9.com\/wp-content\/uploads\/2021\/07\/06_388-300x214.jpg 300w\" sizes=\"(max-width: 580px) 100vw, 580px\" \/><\/p>\n<p class=\"rtejustify\">In hybrid inheritance, as shown in the figure above, all public and protected members of class A are inherited by class D through class B and then class C.<\/p>\n<h2 class=\"rtejustify\"><span style=\"font-size: 18pt;\">Determine the level of access.<\/span><\/h2>\n<p class=\"rtejustify\">Determinants of access levels determine how members of a class are accessed.\u00a0Typically, there are three determinants: Public, Private, and Protected.<\/p>\n<h3 class=\"rtejustify\"><span style=\"font-size: 14pt;\">Public<\/span><\/h3>\n<p class=\"rtejustify\">Class members who are publicly introduced are also available outside the classroom and can be used.<\/p>\n<h3 class=\"rtejustify\"><span style=\"font-size: 14pt;\">Private<\/span><\/h3>\n<p class=\"rtejustify\">Members of a privately defined class are available within that class but are not accessible outside of the class. By default, member variables and functions are defined privately.<\/p>\n<h3 class=\"rtejustify\"><span style=\"font-size: 14pt;\">Protected<\/span><\/h3>\n<p class=\"rtejustify\">Members of a class defined as protected have an approach similar to private access determinants. These variables are inaccessible outside the class but can be accessed in subclasses.<\/p>\n<h3 class=\"rtejustify\"><span style=\"font-size: 14pt;\">Polymorphism<\/span><\/h3>\n<p class=\"rtejustify\">Polymorphism refers to an object&#8217;s ability to receive different types of shapes. The most common application of polymorphism in object-oriented programming occurs when the parent class reference refers to the child class object. Polymorphism can be static or dynamic.<\/p>\n<p class=\"rtejustify\">In static polymorphism, the response to a function is determined at compile time.<\/p>\n<p class=\"rtejustify\">In dynamic polymorphism, the response to a function is determined at runtime.\u00a0Therefore, polymorphisms are available in the following two ways:<\/p>\n<p class=\"rtejustify\">1. Compilation time polymorphs (static)<\/p>\n<p class=\"rtejustify\">2. Run-time polymorphs (dynamic)<\/p>\n<h4 class=\"rtejustify\"><span style=\"font-size: 12pt;\">Compilation time polymorphs<\/span><\/h4>\n<p class=\"rtejustify\">Attaching a function to an object during compile time is called early binding.\u00a0This condition is also known as static binding.\u00a0There are two ways to implement static polymorphism.<\/p>\n<p class=\"rtejustify\">1. Function overloading<\/p>\n<p class=\"rtejustify\">2. Operator overloading<\/p>\n<h3 class=\"rtejustify\"><span style=\"font-size: 14pt;\">Function Overload in Python<\/span><\/h3>\n<p class=\"rtejustify\">Function overload is a property in which two or more functions can have the same name but different parameters. Function overloads are two or more functions with the same name but different arguments. The following example shows a functional overload called a test.<\/p>\n<div class=\"wp-block-codemirror-blocks code-block\">\n<pre class=\"CodeMirror\" data-setting=\"{&quot;mode&quot;:&quot;python&quot;,&quot;mime&quot;:&quot;text\/x-python&quot;,&quot;theme&quot;:&quot;material&quot;,&quot;lineNumbers&quot;:false,&quot;lineWrapping&quot;:false,&quot;styleActiveLine&quot;:false,&quot;readOnly&quot;:true,&quot;align&quot;:&quot;&quot;}\">int test () {test\r\n\r\nint test (int a) test test\r\n\r\nfloat test (double a)}} int test (int a, double b) {}<\/pre>\n<\/div>\n<p class=\"rtejustify\">In the example above, all four functions use the function overload approach because the arguments assigned to the functions differ.<\/p>\n<h3 class=\"rtejustify\"><span style=\"font-size: 14pt;\">Operator overload in Python<\/span><\/h3>\n<p class=\"rtejustify\">An operator in a programming language is a symbol that tells a compiler or interpreter to perform a specific mathematical, logical, or relational operation to obtain a definite result from that operation.<\/p>\n<p class=\"rtejustify\">\u00a0For example, +, -, and * are mathematical operators and symbols such as &amp;, |, and! Logic operators and symbols such as&gt;, &lt;, =, etc., are relational operators. Operator overlay is a polymorphic type that defines different uses for the operator for the user.<\/p>\n<p class=\"rtejustify\">\u00a0Operator overload is often used when the user performs calculations on self-defined data types. For example, the &#8220;+&#8221; operator can implement addition operations on various data types, such as Integers or Strings.<\/p>\n<h3 class=\"rtejustify\"><span style=\"font-size: 14pt;\">Runtime polymorphs<\/span><\/h3>\n<p class=\"rtejustify\">Runtime or dynamic method Dispatch or delayed connection occurs when an overridden function is called instead of a compile-time function at runtime. In this process, a transcribed method is called through a reference variable of a superclass. The object used by the reference variable determines the calling method.<\/p>\n<h3 class=\"rtejustify\"><span style=\"font-size: 14pt;\">Virtual Function<\/span><\/h3>\n<p class=\"rtejustify\">A virtual function is a member function defined in a base class and redefined by a derived class (Overridden). When you refer to a derived class object using a pointer or reference to the base class, you can call a virtual function for that object and execute the derived class function version.<\/p>\n<p class=\"rtejustify\">Rules for a virtual function<\/p>\n<p class=\"rtejustify\">Virtual functions must be part of a class.<\/p>\n<p class=\"rtejustify\">Virtual functions cannot be static members.<\/p>\n<ul style=\"list-style-type: square;\">\n<li>\u00a0They are accessible through object pointers.<\/li>\n<li>They can be friends or in another class.<\/li>\n<li>\u00a0A virtual function must be defined in the base class, even if not used.<\/li>\n<\/ul>\n<p class=\"rtejustify\">Prototypes of a virtual function of the base class and all derived classes must be the same.<\/p>\n<p class=\"rtejustify\">We cannot have a virtual constructor, but we can have a virtual destructor.<\/p>\n<p class=\"rtejustify\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-10010 size-full\" src=\"https:\/\/ded9.com\/wp-content\/uploads\/2021\/07\/07_315.jpg\" alt=\"We cannot have a virtual constructor, but we can have a virtual destructor.\" width=\"583\" height=\"349\" srcset=\"https:\/\/ded9.com\/wp-content\/uploads\/2021\/07\/07_315.jpg 583w, https:\/\/ded9.com\/wp-content\/uploads\/2021\/07\/07_315-300x180.jpg 300w\" sizes=\"(max-width: 583px) 100vw, 583px\" \/><\/p>\n<h2 class=\"rtejustify\"><span style=\"font-size: 18pt;\">Classes in Python<\/span><\/h2>\n<p class=\"rtejustify\">Class is one of the most important concepts in object-oriented programming. Classes are classified into user-defined data types and include their own functions and data types. Programmers can access the functions and data types of a class by creating an instance of it.<\/p>\n<h3 class=\"rtejustify\"><span style=\"font-size: 14pt;\">Builders<\/span><\/h3>\n<p class=\"rtejustify\">Constructors are special class objects that the compiler calls when an object instance is created. Constructors have the same name as the class and are defined inside or outside the class. Here are three types of manufacturers:<\/p>\n<p class=\"rtejustify\">1. Default builder<\/p>\n<p class=\"rtejustify\">2. The manufacturer has a parameter<\/p>\n<p class=\"rtejustify\">3. Copy maker<\/p>\n<h3 class=\"rtejustify\"><span style=\"font-size: 14pt;\">Default constructors<\/span><\/h3>\n<p class=\"rtejustify\">A default constructor is a constructor that is called without any arguments.<\/p>\n<h3 class=\"rtejustify\"><span style=\"font-size: 14pt;\">Parameterized constructors<\/span><\/h3>\n<p class=\"rtejustify\">It is possible to send parameters to a manufacturer. Typically, these arguments are used to construct an object when constructing it. Building a constructor with parameters is enough to specify the parameters, similar to defining functions for the constructor. When determining the constructor&#8217;s body, you use these parameters to describe an object.<\/p>\n<h3 class=\"rtejustify\"><span style=\"font-size: 14pt;\">Copy constructors<\/span><\/h3>\n<p class=\"rtejustify\">A constructor creates a new copy of an object, an exact copy of an existing object. In this case, the compiler provides a default copy constructor for all classes. The constructor creates an object by initializing it with an object of the same class previously created. The copymaker is used in the following cases.\u00bb<\/p>\n<p class=\"rtejustify\">Initialize one object with another object of the same type.<\/p>\n<p class=\"rtejustify\">Copy an object to send it as an argument to a function<\/p>\n<p class=\"rtejustify\">Copy an object to restore it from a function<\/p>\n<p class=\"rtejustify\">If a class does not define a copymaker, the compiler defines it. If the class has pointer variables and dynamic memory allocation, there must be a copymaker. The most common forms of a copymaker are:<\/p>\n<div class=\"wp-block-codemirror-blocks code-block \">\n<pre class=\"CodeMirror\" data-setting=\"{&quot;mode&quot;:&quot;clike&quot;,&quot;mime&quot;:&quot;text\/x-c++src&quot;,&quot;theme&quot;:&quot;material&quot;,&quot;lineNumbers&quot;:false,&quot;lineWrapping&quot;:false,&quot;styleActiveLine&quot;:false,&quot;readOnly&quot;:true,&quot;align&quot;:&quot;&quot;}\">Classname (const classname * &amp; obj) {\/\/ body of constructor\r\n\r\n}<\/pre>\n<\/div>\n<p class=\"rtejustify\">In the code snippet above, obj refers to an object used to initialize another object.<\/p>\n<h3 class=\"rtejustify\"><span style=\"font-size: 14pt;\">Destroyers<\/span><\/h3>\n<p class=\"rtejustify\">A destroyer is a class member&#8217;s function that is automatically called when an object is out of reach or explicitly destroyed to clear the object and free memory. The destroyer has the same name as the class, except that it has a prefix. For example, for the Destructor class, the function name of a destroyer is ru Destructor (). If the class does not define a destroyer, the compiler will create it by default.<\/p>\n<p class=\"rtejustify\">The above approach is sufficient for most classes. You only need to define a default destroyer if you have saved the system resource handle, and these resources need to be retrieved twice. This is also true for pointers that have their own memory.<\/p>\n<h3 class=\"rtejustify\">Things<\/h3>\n<p class=\"rtejustify\">An object is an instance of a class containing methods and attributes used to construct a particular data type. When you send a message to an object, you ask the object to call or execute one of the methods defined in the class. From a programming point of view, an object can contain a data structure, a variable, or a function to which memory is allocated.<\/p>\n<p class=\"rtejustify\">This object is instantiated as a class hierarchy. A class is a blueprint for building objects (a particular data structure), providing initial values \u200b\u200bfor a state (member variables or attributes), and implementing behavior (member functions or methods).<\/p>\n<h2 class=\"rtejustify\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-10011 size-full\" src=\"https:\/\/ded9.com\/wp-content\/uploads\/2021\/07\/08_270.jpg\" alt=\"This object is instantiated as a class hierarchy. A class is a blueprint for building objects (a particular data structure), providing initial values \u200b\u200bfor a state (member variables or attributes), and implementing behavior (member functions or methods).\" width=\"577\" height=\"462\" srcset=\"https:\/\/ded9.com\/wp-content\/uploads\/2021\/07\/08_270.jpg 577w, https:\/\/ded9.com\/wp-content\/uploads\/2021\/07\/08_270-300x240.jpg 300w\" sizes=\"(max-width: 577px) 100vw, 577px\" \/>FAQ<\/h2>\n<div id=\"rank-math-rich-snippet-wrapper\"><div id=\"rank-math-faq\" class=\"rank-math-block\">\n<div class=\"rank-math-list \">\n<div id=\"faq-1\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \">What foundational Python topics are covered?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>The article explains core concepts like syntax, variables, data types, and control structures.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-2\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \">Why is learning Python basics important?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>Understanding fundamentals enables learners to write correct, readable, and efficient Python code.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-3\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \">Who is this Python basics guide for?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>Beginners and aspiring developers building their first skills in Python programming.<\/p>\n\n<\/div>\n<\/div>\n<\/div>\n<\/div><\/div>\n","protected":false},"excerpt":{"rendered":"<p>Almost All Programmers And Training Sites Believe That Python is a simple programming language because Its Syntax Is Easy To Learn, and beginners can use the concepts they have learned after a few months.\u00a0 However, Python is best read about important practical concepts that are highly convergent with other languages. In this article, we will [&hellip;]<\/p>\n","protected":false},"author":6,"featured_media":10003,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[316],"tags":[320],"class_list":["post-10001","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-python","tag-python"],"acf":[],"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/ded9.com\/tr\/wp-json\/wp\/v2\/posts\/10001","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ded9.com\/tr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/ded9.com\/tr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/ded9.com\/tr\/wp-json\/wp\/v2\/users\/6"}],"replies":[{"embeddable":true,"href":"https:\/\/ded9.com\/tr\/wp-json\/wp\/v2\/comments?post=10001"}],"version-history":[{"count":5,"href":"https:\/\/ded9.com\/tr\/wp-json\/wp\/v2\/posts\/10001\/revisions"}],"predecessor-version":[{"id":266376,"href":"https:\/\/ded9.com\/tr\/wp-json\/wp\/v2\/posts\/10001\/revisions\/266376"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/ded9.com\/tr\/wp-json\/wp\/v2\/media\/10003"}],"wp:attachment":[{"href":"https:\/\/ded9.com\/tr\/wp-json\/wp\/v2\/media?parent=10001"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ded9.com\/tr\/wp-json\/wp\/v2\/categories?post=10001"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ded9.com\/tr\/wp-json\/wp\/v2\/tags?post=10001"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}