{"id":9847,"date":"2022-09-21T01:19:31","date_gmt":"2022-09-20T19:49:31","guid":{"rendered":"https:\/\/jassweb.com\/solved\/solved-got-unboundlocalerror-local-variable-referenced-before-assignment-but-it-wasnt\/"},"modified":"2022-09-21T01:19:31","modified_gmt":"2022-09-20T19:49:31","slug":"solved-got-unboundlocalerror-local-variable-referenced-before-assignment-but-it-wasnt","status":"publish","type":"post","link":"https:\/\/jassweb.com\/solved\/solved-got-unboundlocalerror-local-variable-referenced-before-assignment-but-it-wasnt\/","title":{"rendered":"[Solved] Got UnboundLocalError: Local Variable referenced before assignment, but it wasn&#8217;t"},"content":{"rendered":"<p> [ad_1]<br \/>\n<\/p>\n<div id=\"answer-31278371\" class=\"answer js-answer accepted-answer js-accepted-answer\" data-answerid=\"31278371\" data-parentid=\"31278037\" data-score=\"1\" data-position-on-page=\"1\" data-highest-scored=\"1\" data-question-has-accepted-highest-score=\"1\" itemprop=\"acceptedAnswer\" itemscope itemtype=\"https:\/\/schema.org\/Answer\">\n<div class=\"post-layout\">\n<div class=\"votecell post-layout--left\"><\/div>\n<div class=\"answercell post-layout--right\">\n<div class=\"s-prose js-post-body\" itemprop=\"text\">\n<p>Your <code>findall('CRC-START(.*?)CRC-END', PIDFile.read(), re.S)<\/code> on line 202 didn&#8217;t find anything, PID didn&#8217;t get declared, boom, <code>UnboundLocalError<\/code>. <\/p>\n<p>This happens because python interpreter makes a preliminary pass on the code, marking encountered variables as local, but it does not (and cannot) check if code that declares them will actually be executed.<br \/>\nMinimal reproducible example of that effect would be this:<\/p>\n<pre><code>&gt;&gt;&gt; def foo():\n    if 0:\n        a = 1\n    print a\n\n\n&gt;&gt;&gt; foo()\n\nTraceback (most recent call last):\n  File \"&lt;pyshell#5&gt;\", line 1, in &lt;module&gt;\n    foo()\n  File \"&lt;pyshell#4&gt;\", line 4, in foo\n    print a\nUnboundLocalError: local variable 'a' referenced before assignment\n<\/code><\/pre>\n<\/p><\/div>\n<div class=\"mt24\"><\/div>\n<\/div>\n<p>            <span class=\"d-none\" itemprop=\"commentCount\">1<\/span> <\/p><\/div>\n<\/div>\n<p>[ad_2]<\/p>\n<p>solved Got UnboundLocalError: Local Variable referenced before assignment, but it wasn&#8217;t <\/p>\n","protected":false},"excerpt":{"rendered":"<p>[ad_1] Your findall(&#8216;CRC-START(.*?)CRC-END&#8217;, PIDFile.read(), re.S) on line 202 didn&#8217;t find anything, PID didn&#8217;t get declared, boom, UnboundLocalError. This happens because python interpreter makes a preliminary pass on the code, marking encountered variables as local, but it does not (and cannot) check if code that declares them will actually be executed. Minimal reproducible example of that &#8230; <a title=\"[Solved] Got UnboundLocalError: Local Variable referenced before assignment, but it wasn&#8217;t\" class=\"read-more\" href=\"https:\/\/jassweb.com\/solved\/solved-got-unboundlocalerror-local-variable-referenced-before-assignment-but-it-wasnt\/\" aria-label=\"More on [Solved] Got UnboundLocalError: Local Variable referenced before assignment, but it wasn&#8217;t\">Read more<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[320],"tags":[540,349,366],"class_list":["post-9847","post","type-post","status-publish","format-standard","hentry","category-solved","tag-list","tag-python","tag-variables"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>[Solved] Got UnboundLocalError: Local Variable referenced before assignment, but it wasn&#039;t - JassWeb<\/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:\/\/jassweb.com\/solved\/solved-got-unboundlocalerror-local-variable-referenced-before-assignment-but-it-wasnt\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"[Solved] Got UnboundLocalError: Local Variable referenced before assignment, but it wasn&#039;t - JassWeb\" \/>\n<meta property=\"og:description\" content=\"[ad_1] Your findall(&#039;CRC-START(.*?)CRC-END&#039;, PIDFile.read(), re.S) on line 202 didn&#8217;t find anything, PID didn&#8217;t get declared, boom, UnboundLocalError. This happens because python interpreter makes a preliminary pass on the code, marking encountered variables as local, but it does not (and cannot) check if code that declares them will actually be executed. Minimal reproducible example of that ... Read more\" \/>\n<meta property=\"og:url\" content=\"https:\/\/jassweb.com\/solved\/solved-got-unboundlocalerror-local-variable-referenced-before-assignment-but-it-wasnt\/\" \/>\n<meta property=\"og:site_name\" content=\"JassWeb\" \/>\n<meta property=\"article:published_time\" content=\"2022-09-20T19:49:31+00:00\" \/>\n<meta name=\"author\" content=\"Kirat\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Kirat\" \/>\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:\/\/jassweb.com\/solved\/solved-got-unboundlocalerror-local-variable-referenced-before-assignment-but-it-wasnt\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/jassweb.com\/solved\/solved-got-unboundlocalerror-local-variable-referenced-before-assignment-but-it-wasnt\/\"},\"author\":{\"name\":\"Kirat\",\"@id\":\"https:\/\/jassweb.com\/solved\/#\/schema\/person\/65c9c7b7958150c0dc8371fa35dd7c31\"},\"headline\":\"[Solved] Got UnboundLocalError: Local Variable referenced before assignment, but it wasn&#8217;t\",\"datePublished\":\"2022-09-20T19:49:31+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/jassweb.com\/solved\/solved-got-unboundlocalerror-local-variable-referenced-before-assignment-but-it-wasnt\/\"},\"wordCount\":81,\"publisher\":{\"@id\":\"https:\/\/jassweb.com\/solved\/#organization\"},\"keywords\":[\"list\",\"python\",\"variables\"],\"articleSection\":[\"Solved\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/jassweb.com\/solved\/solved-got-unboundlocalerror-local-variable-referenced-before-assignment-but-it-wasnt\/\",\"url\":\"https:\/\/jassweb.com\/solved\/solved-got-unboundlocalerror-local-variable-referenced-before-assignment-but-it-wasnt\/\",\"name\":\"[Solved] Got UnboundLocalError: Local Variable referenced before assignment, but it wasn't - JassWeb\",\"isPartOf\":{\"@id\":\"https:\/\/jassweb.com\/solved\/#website\"},\"datePublished\":\"2022-09-20T19:49:31+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/jassweb.com\/solved\/solved-got-unboundlocalerror-local-variable-referenced-before-assignment-but-it-wasnt\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/jassweb.com\/solved\/solved-got-unboundlocalerror-local-variable-referenced-before-assignment-but-it-wasnt\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/jassweb.com\/solved\/solved-got-unboundlocalerror-local-variable-referenced-before-assignment-but-it-wasnt\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/jassweb.com\/solved\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"[Solved] Got UnboundLocalError: Local Variable referenced before assignment, but it wasn&#8217;t\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/jassweb.com\/solved\/#website\",\"url\":\"https:\/\/jassweb.com\/solved\/\",\"name\":\"JassWeb\",\"description\":\"Build High-quality Websites\",\"publisher\":{\"@id\":\"https:\/\/jassweb.com\/solved\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/jassweb.com\/solved\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/jassweb.com\/solved\/#organization\",\"name\":\"Jass Web\",\"url\":\"https:\/\/jassweb.com\/solved\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/jassweb.com\/solved\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/jassweb.com\/wp-content\/uploads\/2021\/02\/jass-website-logo-1.png\",\"contentUrl\":\"https:\/\/jassweb.com\/wp-content\/uploads\/2021\/02\/jass-website-logo-1.png\",\"width\":693,\"height\":132,\"caption\":\"Jass Web\"},\"image\":{\"@id\":\"https:\/\/jassweb.com\/solved\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/jassweb.com\/solved\/#\/schema\/person\/65c9c7b7958150c0dc8371fa35dd7c31\",\"name\":\"Kirat\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/jassweb.com\/solved\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/jassweb.com\/solved\/wp-content\/litespeed\/avatar\/1261af3c9451399fa1336d28b98ea3bb.jpg?ver=1776403586\",\"contentUrl\":\"https:\/\/jassweb.com\/solved\/wp-content\/litespeed\/avatar\/1261af3c9451399fa1336d28b98ea3bb.jpg?ver=1776403586\",\"caption\":\"Kirat\"},\"sameAs\":[\"http:\/\/jassweb.com\"],\"url\":\"https:\/\/jassweb.com\/solved\/author\/jaspritsinghghumangmail-com\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"[Solved] Got UnboundLocalError: Local Variable referenced before assignment, but it wasn't - JassWeb","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:\/\/jassweb.com\/solved\/solved-got-unboundlocalerror-local-variable-referenced-before-assignment-but-it-wasnt\/","og_locale":"en_US","og_type":"article","og_title":"[Solved] Got UnboundLocalError: Local Variable referenced before assignment, but it wasn't - JassWeb","og_description":"[ad_1] Your findall('CRC-START(.*?)CRC-END', PIDFile.read(), re.S) on line 202 didn&#8217;t find anything, PID didn&#8217;t get declared, boom, UnboundLocalError. This happens because python interpreter makes a preliminary pass on the code, marking encountered variables as local, but it does not (and cannot) check if code that declares them will actually be executed. Minimal reproducible example of that ... Read more","og_url":"https:\/\/jassweb.com\/solved\/solved-got-unboundlocalerror-local-variable-referenced-before-assignment-but-it-wasnt\/","og_site_name":"JassWeb","article_published_time":"2022-09-20T19:49:31+00:00","author":"Kirat","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Kirat","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/jassweb.com\/solved\/solved-got-unboundlocalerror-local-variable-referenced-before-assignment-but-it-wasnt\/#article","isPartOf":{"@id":"https:\/\/jassweb.com\/solved\/solved-got-unboundlocalerror-local-variable-referenced-before-assignment-but-it-wasnt\/"},"author":{"name":"Kirat","@id":"https:\/\/jassweb.com\/solved\/#\/schema\/person\/65c9c7b7958150c0dc8371fa35dd7c31"},"headline":"[Solved] Got UnboundLocalError: Local Variable referenced before assignment, but it wasn&#8217;t","datePublished":"2022-09-20T19:49:31+00:00","mainEntityOfPage":{"@id":"https:\/\/jassweb.com\/solved\/solved-got-unboundlocalerror-local-variable-referenced-before-assignment-but-it-wasnt\/"},"wordCount":81,"publisher":{"@id":"https:\/\/jassweb.com\/solved\/#organization"},"keywords":["list","python","variables"],"articleSection":["Solved"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/jassweb.com\/solved\/solved-got-unboundlocalerror-local-variable-referenced-before-assignment-but-it-wasnt\/","url":"https:\/\/jassweb.com\/solved\/solved-got-unboundlocalerror-local-variable-referenced-before-assignment-but-it-wasnt\/","name":"[Solved] Got UnboundLocalError: Local Variable referenced before assignment, but it wasn't - JassWeb","isPartOf":{"@id":"https:\/\/jassweb.com\/solved\/#website"},"datePublished":"2022-09-20T19:49:31+00:00","breadcrumb":{"@id":"https:\/\/jassweb.com\/solved\/solved-got-unboundlocalerror-local-variable-referenced-before-assignment-but-it-wasnt\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/jassweb.com\/solved\/solved-got-unboundlocalerror-local-variable-referenced-before-assignment-but-it-wasnt\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/jassweb.com\/solved\/solved-got-unboundlocalerror-local-variable-referenced-before-assignment-but-it-wasnt\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/jassweb.com\/solved\/"},{"@type":"ListItem","position":2,"name":"[Solved] Got UnboundLocalError: Local Variable referenced before assignment, but it wasn&#8217;t"}]},{"@type":"WebSite","@id":"https:\/\/jassweb.com\/solved\/#website","url":"https:\/\/jassweb.com\/solved\/","name":"JassWeb","description":"Build High-quality Websites","publisher":{"@id":"https:\/\/jassweb.com\/solved\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/jassweb.com\/solved\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/jassweb.com\/solved\/#organization","name":"Jass Web","url":"https:\/\/jassweb.com\/solved\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/jassweb.com\/solved\/#\/schema\/logo\/image\/","url":"https:\/\/jassweb.com\/wp-content\/uploads\/2021\/02\/jass-website-logo-1.png","contentUrl":"https:\/\/jassweb.com\/wp-content\/uploads\/2021\/02\/jass-website-logo-1.png","width":693,"height":132,"caption":"Jass Web"},"image":{"@id":"https:\/\/jassweb.com\/solved\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/jassweb.com\/solved\/#\/schema\/person\/65c9c7b7958150c0dc8371fa35dd7c31","name":"Kirat","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/jassweb.com\/solved\/#\/schema\/person\/image\/","url":"https:\/\/jassweb.com\/solved\/wp-content\/litespeed\/avatar\/1261af3c9451399fa1336d28b98ea3bb.jpg?ver=1776403586","contentUrl":"https:\/\/jassweb.com\/solved\/wp-content\/litespeed\/avatar\/1261af3c9451399fa1336d28b98ea3bb.jpg?ver=1776403586","caption":"Kirat"},"sameAs":["http:\/\/jassweb.com"],"url":"https:\/\/jassweb.com\/solved\/author\/jaspritsinghghumangmail-com\/"}]}},"_links":{"self":[{"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/posts\/9847","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/comments?post=9847"}],"version-history":[{"count":0,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/posts\/9847\/revisions"}],"wp:attachment":[{"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/media?parent=9847"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/categories?post=9847"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/tags?post=9847"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}