<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Python Basics on ErrorVault — Developer Error Code Dictionary</title>
    <link>https://errorvault.dev/tags/python-basics/</link>
    <description>Recent content in Python Basics on ErrorVault — Developer Error Code Dictionary</description>
    <generator>Hugo</generator>
    <language>en-us</language>
    <lastBuildDate>Sat, 13 Jun 2026 07:56:04 +0800</lastBuildDate>
    <atom:link href="https://errorvault.dev/tags/python-basics/feed.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Fix NameError: Python undefined name resolution at runtime</title>
      <link>https://errorvault.dev/python/python-nameerror-undefined-name-resolution/</link>
      <pubDate>Sat, 13 Jun 2026 07:56:04 +0800</pubDate>
      <guid>https://errorvault.dev/python/python-nameerror-undefined-name-resolution/</guid>
      <description>&lt;h2 id=&#34;1-symptoms&#34;&gt;1. Symptoms&lt;/h2&gt;&#xA;&lt;p&gt;When a &lt;code&gt;NameError&lt;/code&gt; occurs in Python, the interpreter halts execution and displays a traceback that clearly identifies the problem. The error message follows a consistent pattern: &lt;code&gt;NameError: name &#39;identifier&#39; is not defined&lt;/code&gt;, where &lt;code&gt;identifier&lt;/code&gt; is the name that Python could not resolve.&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Common manifestations:&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#282a36;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-python&#34; data-lang=&#34;python&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Traceback (most recent call last):&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  File &lt;span style=&#34;color:#f1fa8c&#34;&gt;&amp;#34;example.py&amp;#34;&lt;/span&gt;, line &lt;span style=&#34;color:#bd93f9&#34;&gt;10&lt;/span&gt;, &lt;span style=&#34;color:#ff79c6&#34;&gt;in&lt;/span&gt; &lt;span style=&#34;color:#ff79c6&#34;&gt;&amp;lt;&lt;/span&gt;module&lt;span style=&#34;color:#ff79c6&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#8be9fd;font-style:italic&#34;&gt;print&lt;/span&gt;(my_variable)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;NameError: name &lt;span style=&#34;color:#f1fa8c&#34;&gt;&amp;#39;my_variable&amp;#39;&lt;/span&gt; &lt;span style=&#34;color:#ff79c6&#34;&gt;is&lt;/span&gt; &lt;span style=&#34;color:#ff79c6&#34;&gt;not&lt;/span&gt; defined&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#282a36;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-python&#34; data-lang=&#34;python&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Traceback (most recent call last):&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  File &lt;span style=&#34;color:#f1fa8c&#34;&gt;&amp;#34;calculator.py&amp;#34;&lt;/span&gt;, line &lt;span style=&#34;color:#bd93f9&#34;&gt;15&lt;/span&gt;, &lt;span style=&#34;color:#ff79c6&#34;&gt;in&lt;/span&gt; &lt;span style=&#34;color:#ff79c6&#34;&gt;&amp;lt;&lt;/span&gt;module&lt;span style=&#34;color:#ff79c6&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    result &lt;span style=&#34;color:#ff79c6&#34;&gt;=&lt;/span&gt; add_numbers(a, b)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;NameError: name &lt;span style=&#34;color:#f1fa8c&#34;&gt;&amp;#39;add_numbers&amp;#39;&lt;/span&gt; &lt;span style=&#34;color:#ff79c6&#34;&gt;is&lt;/span&gt; &lt;span style=&#34;color:#ff79c6&#34;&gt;not&lt;/span&gt; defined&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;The error always appears at the exact line where Python attempts to access the undefined name. The line number in the traceback pinpoints the location, making initial diagnosis straightforward. However, the root cause might be earlier in the code—perhaps a typo made hours ago that only manifests when execution reaches the problematic line.&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
