{"id":4032,"date":"2024-03-13T07:50:46","date_gmt":"2024-03-13T07:50:46","guid":{"rendered":"https:\/\/www.silicloud.com\/blog\/what-is-the-difference-between-deep-copy-and-shallow-copy-in-python-2\/"},"modified":"2025-07-31T00:43:49","modified_gmt":"2025-07-31T00:43:49","slug":"what-is-the-difference-between-deep-copy-and-shallow-copy-in-python-2","status":"publish","type":"post","link":"https:\/\/www.silicloud.com\/blog\/what-is-the-difference-between-deep-copy-and-shallow-copy-in-python-2\/","title":{"rendered":"Deep vs Shallow Copy in Python"},"content":{"rendered":"<p>In Python, deep copying and shallow copying are two different ways of copying objects.<\/p>\n<p>Shallow Copy: Shallow copy is a method of creating a new object and then copying the elements from the original object into the new object. However, if the elements in the original object are mutable objects (such as lists, dictionaries, etc.), the elements in the new object will still be references to the elements in the original object. This means that any changes made to the new object will also affect the original object.<\/p>\n<p>&#8220;I can&#8217;t make it to the meeting tomorrow because of a scheduling conflict.&#8221; <\/p>\n<p>&#8220;I have to cancel the meeting tomorrow due to a scheduling conflict.&#8221;<\/p>\n<pre class=\"post-pre\"><code class=\"lang-python\">import copy\r\n\r\noriginal_list = [1, [2, 3], 4]\r\nnew_list = copy.copy(original_list)\r\n\r\nnew_list[1].append(5)\r\n\r\nprint(original_list)  # \u8f93\u51fa: [1, [2, 3, 5], 4]\r\n<\/code><\/pre>\n<p>2. Deep Copy: Deep Copy is a method of creating a completely separate new object from the original one, where the elements of the original object and the new object are independent and do not affect each other. Deep Copy recursively copies all the sub-objects within the original object.<\/p>\n<p>\u4f8b\u5b50\uff1aAn unexpected turn of events led to the cancellation of the concert.<\/p>\n<pre class=\"post-pre\"><code class=\"lang-python\">import copy\r\n\r\noriginal_list = [1, [2, 3], 4]\r\nnew_list = copy.deepcopy(original_list)\r\n\r\nnew_list[1].append(5)\r\n\r\nprint(original_list)  # \u8f93\u51fa: [1, [2, 3], 4]\r\n<\/code><\/pre>\n<p>Therefore, deep copying creates a fully independent copy of the original object, while shallow copying only duplicates the reference of the original object, resulting in different effects between the original and new objects.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In Python, deep copying and shallow copying are two different ways of copying objects. Shallow Copy: Shallow copy is a method of creating a new object and then copying the elements from the original object into the new object. However, if the elements in the original object are mutable objects (such as lists, dictionaries, etc.), [&hellip;]<\/p>\n","protected":false},"author":7,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_import_markdown_pro_load_document_selector":0,"_import_markdown_pro_submit_text_textarea":"","footnotes":""},"categories":[1],"tags":[224,3153,299,72,3154],"class_list":["post-4032","post","type-post","status-publish","format-standard","hentry","category-uncategorized","tag-data-structures","tag-deep-copy","tag-programming","tag-python","tag-shallow-copy"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v21.5 (Yoast SEO v21.5) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Deep vs Shallow Copy in Python - Blog - Silicon Cloud<\/title>\n<meta name=\"description\" content=\"Learn key differences between Python deep\/shallow copy. Understand reference behavior and avoid unexpected mutations in your code.\" \/>\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.silicloud.com\/blog\/what-is-the-difference-between-deep-copy-and-shallow-copy-in-python-2\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Deep vs Shallow Copy in Python\" \/>\n<meta property=\"og:description\" content=\"Learn key differences between Python deep\/shallow copy. Understand reference behavior and avoid unexpected mutations in your code.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.silicloud.com\/blog\/what-is-the-difference-between-deep-copy-and-shallow-copy-in-python-2\/\" \/>\n<meta property=\"og:site_name\" content=\"Blog - Silicon Cloud\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/SiliCloudGlobal\/\" \/>\n<meta property=\"article:published_time\" content=\"2024-03-13T07:50:46+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-07-31T00:43:49+00:00\" \/>\n<meta name=\"author\" content=\"Sophia Anderson\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@SiliCloudGlobal\" \/>\n<meta name=\"twitter:site\" content=\"@SiliCloudGlobal\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Sophia Anderson\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/what-is-the-difference-between-deep-copy-and-shallow-copy-in-python-2\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/what-is-the-difference-between-deep-copy-and-shallow-copy-in-python-2\/\"},\"author\":{\"name\":\"Sophia Anderson\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/19a24313de9c988db3d69226b4a40a30\"},\"headline\":\"Deep vs Shallow Copy in Python\",\"datePublished\":\"2024-03-13T07:50:46+00:00\",\"dateModified\":\"2025-07-31T00:43:49+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/what-is-the-difference-between-deep-copy-and-shallow-copy-in-python-2\/\"},\"wordCount\":213,\"publisher\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\"},\"keywords\":[\"data structures\",\"deep copy\",\"programming\",\"Python\",\"shallow copy\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/what-is-the-difference-between-deep-copy-and-shallow-copy-in-python-2\/\",\"url\":\"https:\/\/www.silicloud.com\/blog\/what-is-the-difference-between-deep-copy-and-shallow-copy-in-python-2\/\",\"name\":\"Deep vs Shallow Copy in Python - Blog - Silicon Cloud\",\"isPartOf\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#website\"},\"datePublished\":\"2024-03-13T07:50:46+00:00\",\"dateModified\":\"2025-07-31T00:43:49+00:00\",\"description\":\"Learn key differences between Python deep\/shallow copy. Understand reference behavior and avoid unexpected mutations in your code.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/what-is-the-difference-between-deep-copy-and-shallow-copy-in-python-2\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.silicloud.com\/blog\/what-is-the-difference-between-deep-copy-and-shallow-copy-in-python-2\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/what-is-the-difference-between-deep-copy-and-shallow-copy-in-python-2\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.silicloud.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Deep vs Shallow Copy in Python\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#website\",\"url\":\"https:\/\/www.silicloud.com\/blog\/\",\"name\":\"Silicon Cloud Blog\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\"},\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\",\"name\":\"Silicon Cloud Blog\",\"url\":\"https:\/\/www.silicloud.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png\",\"contentUrl\":\"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png\",\"width\":1024,\"height\":1024,\"caption\":\"Silicon Cloud Blog\"},\"image\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/SiliCloudGlobal\/\",\"https:\/\/twitter.com\/SiliCloudGlobal\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/19a24313de9c988db3d69226b4a40a30\",\"name\":\"Sophia Anderson\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/c726c09aa40e37115fb5c62d0c3ed62c16ca255d3763e2e3ae83a70ddf8c2175?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/c726c09aa40e37115fb5c62d0c3ed62c16ca255d3763e2e3ae83a70ddf8c2175?s=96&d=mm&r=g\",\"caption\":\"Sophia Anderson\"},\"url\":\"https:\/\/www.silicloud.com\/blog\/author\/sophiaanderson\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Deep vs Shallow Copy in Python - Blog - Silicon Cloud","description":"Learn key differences between Python deep\/shallow copy. Understand reference behavior and avoid unexpected mutations in your code.","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.silicloud.com\/blog\/what-is-the-difference-between-deep-copy-and-shallow-copy-in-python-2\/","og_locale":"en_US","og_type":"article","og_title":"Deep vs Shallow Copy in Python","og_description":"Learn key differences between Python deep\/shallow copy. Understand reference behavior and avoid unexpected mutations in your code.","og_url":"https:\/\/www.silicloud.com\/blog\/what-is-the-difference-between-deep-copy-and-shallow-copy-in-python-2\/","og_site_name":"Blog - Silicon Cloud","article_publisher":"https:\/\/www.facebook.com\/SiliCloudGlobal\/","article_published_time":"2024-03-13T07:50:46+00:00","article_modified_time":"2025-07-31T00:43:49+00:00","author":"Sophia Anderson","twitter_card":"summary_large_image","twitter_creator":"@SiliCloudGlobal","twitter_site":"@SiliCloudGlobal","twitter_misc":{"Written by":"Sophia Anderson","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.silicloud.com\/blog\/what-is-the-difference-between-deep-copy-and-shallow-copy-in-python-2\/#article","isPartOf":{"@id":"https:\/\/www.silicloud.com\/blog\/what-is-the-difference-between-deep-copy-and-shallow-copy-in-python-2\/"},"author":{"name":"Sophia Anderson","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/19a24313de9c988db3d69226b4a40a30"},"headline":"Deep vs Shallow Copy in Python","datePublished":"2024-03-13T07:50:46+00:00","dateModified":"2025-07-31T00:43:49+00:00","mainEntityOfPage":{"@id":"https:\/\/www.silicloud.com\/blog\/what-is-the-difference-between-deep-copy-and-shallow-copy-in-python-2\/"},"wordCount":213,"publisher":{"@id":"https:\/\/www.silicloud.com\/blog\/#organization"},"keywords":["data structures","deep copy","programming","Python","shallow copy"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.silicloud.com\/blog\/what-is-the-difference-between-deep-copy-and-shallow-copy-in-python-2\/","url":"https:\/\/www.silicloud.com\/blog\/what-is-the-difference-between-deep-copy-and-shallow-copy-in-python-2\/","name":"Deep vs Shallow Copy in Python - Blog - Silicon Cloud","isPartOf":{"@id":"https:\/\/www.silicloud.com\/blog\/#website"},"datePublished":"2024-03-13T07:50:46+00:00","dateModified":"2025-07-31T00:43:49+00:00","description":"Learn key differences between Python deep\/shallow copy. Understand reference behavior and avoid unexpected mutations in your code.","breadcrumb":{"@id":"https:\/\/www.silicloud.com\/blog\/what-is-the-difference-between-deep-copy-and-shallow-copy-in-python-2\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.silicloud.com\/blog\/what-is-the-difference-between-deep-copy-and-shallow-copy-in-python-2\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.silicloud.com\/blog\/what-is-the-difference-between-deep-copy-and-shallow-copy-in-python-2\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.silicloud.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Deep vs Shallow Copy in Python"}]},{"@type":"WebSite","@id":"https:\/\/www.silicloud.com\/blog\/#website","url":"https:\/\/www.silicloud.com\/blog\/","name":"Silicon Cloud Blog","description":"","publisher":{"@id":"https:\/\/www.silicloud.com\/blog\/#organization"},"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.silicloud.com\/blog\/#organization","name":"Silicon Cloud Blog","url":"https:\/\/www.silicloud.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png","contentUrl":"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png","width":1024,"height":1024,"caption":"Silicon Cloud Blog"},"image":{"@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/SiliCloudGlobal\/","https:\/\/twitter.com\/SiliCloudGlobal"]},{"@type":"Person","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/19a24313de9c988db3d69226b4a40a30","name":"Sophia Anderson","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/c726c09aa40e37115fb5c62d0c3ed62c16ca255d3763e2e3ae83a70ddf8c2175?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/c726c09aa40e37115fb5c62d0c3ed62c16ca255d3763e2e3ae83a70ddf8c2175?s=96&d=mm&r=g","caption":"Sophia Anderson"},"url":"https:\/\/www.silicloud.com\/blog\/author\/sophiaanderson\/"}]}},"_links":{"self":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/4032","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/users\/7"}],"replies":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/comments?post=4032"}],"version-history":[{"count":2,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/4032\/revisions"}],"predecessor-version":[{"id":148693,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/4032\/revisions\/148693"}],"wp:attachment":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/media?parent=4032"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/categories?post=4032"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/tags?post=4032"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}