{"id":39185,"date":"2025-11-07T14:59:50","date_gmt":"2025-11-07T22:59:50","guid":{"rendered":"https:\/\/cloudinary.com\/blog\/?p=39185"},"modified":"2025-11-07T14:59:51","modified_gmt":"2025-11-07T22:59:51","slug":"how-to-check-for-not-equal-in-python","status":"publish","type":"post","link":"https:\/\/cloudinary.com\/blog\/questions\/how-to-check-for-not-equal-in-python\/","title":{"rendered":"How to check for not equal in Python"},"content":{"rendered":"\n<p>In code reviews and forum threads, one of the most common beginner questions is how to compare values correctly in Python. The confusion usually starts when people mix up equality vs identity, hit floating-point edge cases, or move from plain Python to libraries like NumPy or pandas where comparisons behave differently.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Question:<\/h2>\n\n\n\n<p><em>I\u2019m new to Python and keep seeing two different ways to test inequality: <code>!= and is not<\/code>. What is the correct way to check for not equal in Python, and what are the common pitfalls with numbers, strings, lists, None, and libraries like NumPy or pandas? Also, are there best practices for readability and performance?<\/em><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Answer:<\/h2>\n\n\n\n<p>Python gives you two main concepts here: value inequality and object identity inequality. Use them for different purposes.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">1) The core operators<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Value not equal:<\/strong> <code>a != b<\/code> checks if two values are not equal. This uses the same semantics as <code>==<\/code> and calls <code>__eq__<\/code> under the hood.<\/li>\n\n\n\n<li><strong>Identity not equal:<\/strong> <code>a is not b<\/code> checks if two references point to different objects in memory. This does not compare the value of the item, just whether or not they are the <em>same<\/em> item.<\/li>\n<\/ul>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-1\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php shcb-wrap-lines\"><span class=\"hljs-comment\"># Value inequality<\/span>\n<span class=\"hljs-number\">3<\/span> != <span class=\"hljs-number\">4<\/span>\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 <span class=\"hljs-comment\"># True<\/span>\n&#91;<span class=\"hljs-number\">1<\/span>, <span class=\"hljs-number\">2<\/span>] != &#91;<span class=\"hljs-number\">1<\/span>, <span class=\"hljs-number\">2<\/span>]\u00a0 \u00a0 <span class=\"hljs-comment\"># False, lists have the same content<\/span>\n\n<span class=\"hljs-comment\"># Identity inequality<\/span>\na = &#91;<span class=\"hljs-number\">1<\/span>, <span class=\"hljs-number\">2<\/span>]\nb = &#91;<span class=\"hljs-number\">1<\/span>, <span class=\"hljs-number\">2<\/span>]\na is not b\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 <span class=\"hljs-comment\"># True, different list objects even though values are equal<\/span><\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-1\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<h3 class=\"wp-block-heading\">2) Best practices and common pitfalls<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Comparing to None:<\/strong> Use identity, not equality: <code>if x is not None<\/code>. This is the canonical style and avoids surprises if <code>__eq__<\/code> is overloaded.<\/li>\n\n\n\n<li><strong>Floats and precision:<\/strong> Avoid direct comparisons when rounding error matters. Use <code>math.isclose<\/code> and invert the result:<\/li>\n<\/ul>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-2\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php shcb-wrap-lines\"><span class=\"hljs-comment\"># Value inequality<\/span>\n<span class=\"hljs-number\">3<\/span> != <span class=\"hljs-number\">4<\/span>\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 <span class=\"hljs-comment\"># True<\/span>\n&#91;<span class=\"hljs-number\">1<\/span>, <span class=\"hljs-number\">2<\/span>] != &#91;<span class=\"hljs-number\">1<\/span>, <span class=\"hljs-number\">2<\/span>]\u00a0 \u00a0 <span class=\"hljs-comment\"># False, lists have the same content<\/span>\n\n<span class=\"hljs-comment\"># Identity inequality<\/span>\na = &#91;<span class=\"hljs-number\">1<\/span>, <span class=\"hljs-number\">2<\/span>]\nb = &#91;<span class=\"hljs-number\">1<\/span>, <span class=\"hljs-number\">2<\/span>]\na is not b\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 <span class=\"hljs-comment\"># True, different list objects even though values are equal<\/span><\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-2\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<ul class=\"wp-block-list\">\n<li><strong>NaN edge case:<\/strong> <code>float('nan') != float('nan')<\/code> is True by definition. Use <code>math.isnan<\/code> to detect NaN.<\/li>\n\n\n\n<li><strong>Strings and case:<\/strong> <code>\"Hello\" != \"hello<\/code>&#8221; is True. For case-insensitive checks, normalize:<\/li>\n<\/ul>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-3\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php shcb-wrap-lines\">s1.lower() != s2.lower()\n<span class=\"hljs-comment\"># or better for i18n<\/span>\ns1.casefold() != s2.casefold()<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-3\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Custom classes:<\/strong> In Python 3, <code>__ne__<\/code> is automatically inferred as the inverse of <code>__eq__<\/code> if you only define <code>__eq__<\/code>. Dataclasses do this for you:<\/li>\n<\/ul>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-4\" data-shcb-language-name=\"CSS\" data-shcb-language-slug=\"css\"><span><code class=\"hljs language-css shcb-wrap-lines\"><span class=\"hljs-selector-tag\">from<\/span> <span class=\"hljs-selector-tag\">dataclasses<\/span> <span class=\"hljs-selector-tag\">import<\/span> <span class=\"hljs-selector-tag\">dataclass<\/span>\n\n<span class=\"hljs-keyword\">@dataclass<\/span>(eq=True)\nclass <span class=\"hljs-attribute\">User:<\/span>\n\u00a0 \u00a0 <span class=\"hljs-attribute\">id:<\/span> int\n\u00a0 \u00a0 <span class=\"hljs-attribute\">name:<\/span> str\n\nUser(<span class=\"hljs-number\">1<\/span>, <span class=\"hljs-string\">\"A\"<\/span>) != User(<span class=\"hljs-number\">2<\/span>, <span class=\"hljs-string\">\"A\"<\/span>)\u00a0 # True<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-4\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">CSS<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">css<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Collections:<\/strong> Lists, tuples, sets, and dicts compare by content. For dicts, both keys and values must match to be equal.<\/li>\n<\/ul>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-5\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php shcb-wrap-lines\">{<span class=\"hljs-string\">'a'<\/span>: <span class=\"hljs-number\">1<\/span>} != {<span class=\"hljs-string\">'a'<\/span>: <span class=\"hljs-number\">2<\/span>}\u00a0 <span class=\"hljs-comment\"># True<\/span>\n{<span class=\"hljs-number\">1<\/span>, <span class=\"hljs-number\">2<\/span>} != {<span class=\"hljs-number\">2<\/span>, <span class=\"hljs-number\">1<\/span>}\u00a0 \u00a0 <span class=\"hljs-comment\"># False, sets ignore order<\/span><\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-5\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<ul class=\"wp-block-list\">\n<li><strong>NumPy and pandas:<\/strong> != is elementwise, yielding arrays or Series of booleans. Use any\/all:<\/li>\n<\/ul>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-6\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php shcb-wrap-lines\">import numpy <span class=\"hljs-keyword\">as<\/span> np\na = np.<span class=\"hljs-keyword\">array<\/span>(&#91;<span class=\"hljs-number\">1<\/span>, <span class=\"hljs-number\">2<\/span>, <span class=\"hljs-number\">3<\/span>])\nb = np.<span class=\"hljs-keyword\">array<\/span>(&#91;<span class=\"hljs-number\">1<\/span>, <span class=\"hljs-number\">9<\/span>, <span class=\"hljs-number\">3<\/span>])\n(a != b).any() \u00a0 <span class=\"hljs-comment\"># True if any element differs<\/span><\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-6\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Chained comparisons:<\/strong> <code>x != y != z<\/code> means <code>(x != y)<\/code> and <code>(y != z)<\/code>. It does not mean all three are distinct. For that, use <code>len({x, y, z}) == 3<\/code>.<\/li>\n\n\n\n<li><strong>Readability:<\/strong> Prefer <code>x != y<\/code> over <code>not (x == y)<\/code>. The first is clearer and equivalent.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">3) Quick reference examples<\/h3>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-7\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php shcb-wrap-lines\"><span class=\"hljs-comment\"># Integers<\/span>\n<span class=\"hljs-number\">5<\/span> != <span class=\"hljs-number\">5<\/span>\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 <span class=\"hljs-comment\"># False<\/span>\n<span class=\"hljs-number\">5<\/span> is not <span class=\"hljs-number\">5<\/span>\u00a0 \u00a0 \u00a0 <span class=\"hljs-comment\"># False for small ints due to interning, but don't rely on this<\/span>\n\n<span class=\"hljs-comment\"># None checks<\/span>\nvalue is not None\n\n<span class=\"hljs-comment\"># Strings<\/span>\n<span class=\"hljs-string\">\"a\"<\/span> != <span class=\"hljs-string\">\"A\"<\/span>\u00a0 \u00a0 \u00a0 <span class=\"hljs-comment\"># True<\/span>\n<span class=\"hljs-string\">\"a\"<\/span>.casefold() != <span class=\"hljs-string\">\"A\"<\/span>.casefold()\u00a0 <span class=\"hljs-comment\"># False<\/span>\n\n<span class=\"hljs-comment\"># Floats<\/span>\nfrom math import isclose, isnan\nnot isclose(<span class=\"hljs-number\">0.30000000000000004<\/span>, <span class=\"hljs-number\">0.3<\/span>)\u00a0 <span class=\"hljs-comment\"># False<\/span>\nx = float(<span class=\"hljs-string\">'nan'<\/span>)\nx != x \u00a0 \u00a0 \u00a0 \u00a0 <span class=\"hljs-comment\"># True<\/span>\nisnan(x) \u00a0 \u00a0 \u00a0 <span class=\"hljs-comment\"># True<\/span>\n\n<span class=\"hljs-comment\"># Lists<\/span>\n&#91;<span class=\"hljs-number\">1<\/span>, <span class=\"hljs-number\">2<\/span>] != &#91;<span class=\"hljs-number\">2<\/span>, <span class=\"hljs-number\">1<\/span>]\u00a0 <span class=\"hljs-comment\"># True<\/span><\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-7\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<h3 class=\"wp-block-heading\">Apply this in a media pipeline with Cloudinary<\/h3>\n\n\n\n<p>If you manage images or videos programmatically, you can use these patterns to filter assets and enforce rules. For example, fetch assets and select those whose format is not equal to PNG, then transform or download them.<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-8\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php shcb-wrap-lines\"><span class=\"hljs-comment\"># Example using Cloudinary's Python SDK concepts<\/span>\nimport cloudinary\nimport cloudinary.search\nimport cloudinary.uploader\n\ncloudinary.config(\n\u00a0 \u00a0 cloud_name=<span class=\"hljs-string\">\"your_cloud\"<\/span>,\n\u00a0 \u00a0 api_key=<span class=\"hljs-string\">\"your_key\"<\/span>,\n\u00a0 \u00a0 api_secret=<span class=\"hljs-string\">\"your_secret\"<\/span>\n)\n\n<span class=\"hljs-comment\"># Fetch recent images<\/span>\nresults = cloudinary.search.Search() \\\n\u00a0 \u00a0 .expression(<span class=\"hljs-string\">\"resource_type:image\"<\/span>) \\\n\u00a0 \u00a0 .max_results(<span class=\"hljs-number\">100<\/span>) \\\n\u00a0 \u00a0 .execute()\n\n<span class=\"hljs-comment\"># Filter assets whose format is not equal to 'png'<\/span>\nnon_png_assets = &#91;res <span class=\"hljs-keyword\">for<\/span> res in results&#91;<span class=\"hljs-string\">\"resources\"<\/span>] <span class=\"hljs-keyword\">if<\/span> res.get(<span class=\"hljs-string\">\"format\"<\/span>) != <span class=\"hljs-string\">\"png\"<\/span>]\n\n<span class=\"hljs-comment\"># Convert them on upload or via transformation if needed<\/span>\n<span class=\"hljs-keyword\">for<\/span> asset in non_png_assets:\n\u00a0 \u00a0 public_id = asset&#91;<span class=\"hljs-string\">\"public_id\"<\/span>]\n\u00a0 \u00a0 <span class=\"hljs-comment\"># Example: deliver as PNG by transformation, or re-upload as needed<\/span>\n\u00a0 \u00a0 <span class=\"hljs-comment\"># You can also automate conversions or use the Tools page for quick tests:<\/span>\n\u00a0 \u00a0 <span class=\"hljs-comment\"># https:\/\/cloudinary.com\/tools<\/span>\n\u00a0 \u00a0 <span class=\"hljs-comment\"># Delivered URL could be:<\/span>\n\u00a0 \u00a0 <span class=\"hljs-comment\"># https:\/\/res.cloudinary.com\/&lt;cloud&gt;\/image\/upload\/f_png\/&lt;public_id&gt;.jpg<\/span>\n\u00a0 \u00a0 pass<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-8\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>For quick one-off conversions or tests without writing code, explore <a href=\"https:\/\/cloudinary.com\/tools\">Cloudinary Tools<\/a>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">TL;DR<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Use <code>!=<\/code> for value inequality, <code>is not<\/code> for identity checks.<\/li>\n\n\n\n<li>Prefer <code>x is not None<\/code> when testing against None.<\/li>\n\n\n\n<li>Handle floats with <code>math.isclose<\/code>; remember NaN is not equal to itself.<\/li>\n\n\n\n<li>Collections compare by content; NumPy and pandas return elementwise boolean arrays.<\/li>\n\n\n\n<li>Avoid assuming <code>x != y != z<\/code> means all unique; use a set size check.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Learn More<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/cloudinary.com\/tools\/image-upscale\">Image Upscale<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/cloudinary.com\/tools\/png-to-webp\">PNG to WebP<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/cloudinary.com\/tools\/image-to-jpg\">Image to JPG<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/cloudinary.com\/guides\/video\/video-engineering\">Video Engineering Guide<\/a><\/li>\n<\/ul>\n\n\n\n<p>Build smarter image and video workflows in your Python projects. <a href=\"https:\/\/cloudinary.com\/users\/register_free\">Register for a free Cloudinary account<\/a> to upload, transform, and deliver media at scale.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In code reviews and forum threads, one of the most common beginner questions is how to compare values correctly in Python. The confusion usually starts when people mix up equality vs identity, hit floating-point edge cases, or move from plain Python to libraries like NumPy or pandas where comparisons behave differently. Question: I\u2019m new to [&hellip;]<\/p>\n","protected":false},"author":88,"featured_media":39188,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_cloudinary_featured_overwrite":false,"footnotes":""},"categories":[1],"tags":[423],"class_list":["post-39185","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-uncategorized","tag-questions"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v25.6 (Yoast SEO v26.9) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>How to check for not equal in Python<\/title>\n<meta name=\"description\" content=\"In code reviews and forum threads, one of the most common beginner questions is how to compare values correctly in Python. The confusion usually starts\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/cloudinary.com\/blog\/questions\/how-to-check-for-not-equal-in-python\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How to check for not equal in Python\" \/>\n<meta property=\"og:description\" content=\"In code reviews and forum threads, one of the most common beginner questions is how to compare values correctly in Python. The confusion usually starts\" \/>\n<meta property=\"og:url\" content=\"https:\/\/cloudinary.com\/blog\/questions\/how-to-check-for-not-equal-in-python\/\" \/>\n<meta property=\"og:site_name\" content=\"Cloudinary Blog\" \/>\n<meta property=\"article:published_time\" content=\"2025-11-07T22:59:50+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-11-07T22:59:51+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1762556370\/how_to_check_for_not_equal_in_python_featured_image\/how_to_check_for_not_equal_in_python_featured_image.jpg?_i=AA\" \/>\n\t<meta property=\"og:image:width\" content=\"2000\" \/>\n\t<meta property=\"og:image:height\" content=\"1100\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"damjanantevski\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"NewsArticle\",\"@id\":\"https:\/\/cloudinary.com\/blog\/questions\/how-to-check-for-not-equal-in-python\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/questions\/how-to-check-for-not-equal-in-python\/\"},\"author\":{\"name\":\"damjanantevski\",\"@id\":\"https:\/\/cloudinary.com\/blog\/#\/schema\/person\/43592e43c12520a1e867d456b1e8cf7e\"},\"headline\":\"How to check for not equal in Python\",\"datePublished\":\"2025-11-07T22:59:50+00:00\",\"dateModified\":\"2025-11-07T22:59:51+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/questions\/how-to-check-for-not-equal-in-python\/\"},\"wordCount\":464,\"publisher\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/questions\/how-to-check-for-not-equal-in-python\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1762556370\/how_to_check_for_not_equal_in_python_featured_image\/how_to_check_for_not_equal_in_python_featured_image.jpg?_i=AA\",\"keywords\":[\"Questions\"],\"inLanguage\":\"en-US\",\"copyrightYear\":\"2025\",\"copyrightHolder\":{\"@id\":\"https:\/\/cloudinary.com\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/cloudinary.com\/blog\/questions\/how-to-check-for-not-equal-in-python\/\",\"url\":\"https:\/\/cloudinary.com\/blog\/questions\/how-to-check-for-not-equal-in-python\/\",\"name\":\"How to check for not equal in Python\",\"isPartOf\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/questions\/how-to-check-for-not-equal-in-python\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/questions\/how-to-check-for-not-equal-in-python\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1762556370\/how_to_check_for_not_equal_in_python_featured_image\/how_to_check_for_not_equal_in_python_featured_image.jpg?_i=AA\",\"datePublished\":\"2025-11-07T22:59:50+00:00\",\"dateModified\":\"2025-11-07T22:59:51+00:00\",\"description\":\"In code reviews and forum threads, one of the most common beginner questions is how to compare values correctly in Python. The confusion usually starts\",\"breadcrumb\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/questions\/how-to-check-for-not-equal-in-python\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/cloudinary.com\/blog\/questions\/how-to-check-for-not-equal-in-python\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/cloudinary.com\/blog\/questions\/how-to-check-for-not-equal-in-python\/#primaryimage\",\"url\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1762556370\/how_to_check_for_not_equal_in_python_featured_image\/how_to_check_for_not_equal_in_python_featured_image.jpg?_i=AA\",\"contentUrl\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1762556370\/how_to_check_for_not_equal_in_python_featured_image\/how_to_check_for_not_equal_in_python_featured_image.jpg?_i=AA\",\"width\":2000,\"height\":1100},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/cloudinary.com\/blog\/questions\/how-to-check-for-not-equal-in-python\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/cloudinary.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How to check for not equal in Python\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/cloudinary.com\/blog\/#website\",\"url\":\"https:\/\/cloudinary.com\/blog\/\",\"name\":\"Cloudinary Blog\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/cloudinary.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/cloudinary.com\/blog\/#organization\",\"name\":\"Cloudinary Blog\",\"url\":\"https:\/\/cloudinary.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/cloudinary.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1649718331\/Web_Assets\/blog\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877.png?_i=AA\",\"contentUrl\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1649718331\/Web_Assets\/blog\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877.png?_i=AA\",\"width\":312,\"height\":60,\"caption\":\"Cloudinary Blog\"},\"image\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/cloudinary.com\/blog\/#\/schema\/person\/43592e43c12520a1e867d456b1e8cf7e\",\"name\":\"damjanantevski\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/cloudinary.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/3b40c995531fe4d510212a06c9d4fc666d2cb8efbfebc98a94191701accf4817?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/3b40c995531fe4d510212a06c9d4fc666d2cb8efbfebc98a94191701accf4817?s=96&d=mm&r=g\",\"caption\":\"damjanantevski\"}}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"How to check for not equal in Python","description":"In code reviews and forum threads, one of the most common beginner questions is how to compare values correctly in Python. The confusion usually starts","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:\/\/cloudinary.com\/blog\/questions\/how-to-check-for-not-equal-in-python\/","og_locale":"en_US","og_type":"article","og_title":"How to check for not equal in Python","og_description":"In code reviews and forum threads, one of the most common beginner questions is how to compare values correctly in Python. The confusion usually starts","og_url":"https:\/\/cloudinary.com\/blog\/questions\/how-to-check-for-not-equal-in-python\/","og_site_name":"Cloudinary Blog","article_published_time":"2025-11-07T22:59:50+00:00","article_modified_time":"2025-11-07T22:59:51+00:00","og_image":[{"width":2000,"height":1100,"url":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1762556370\/how_to_check_for_not_equal_in_python_featured_image\/how_to_check_for_not_equal_in_python_featured_image.jpg?_i=AA","type":"image\/jpeg"}],"author":"damjanantevski","twitter_card":"summary_large_image","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"NewsArticle","@id":"https:\/\/cloudinary.com\/blog\/questions\/how-to-check-for-not-equal-in-python\/#article","isPartOf":{"@id":"https:\/\/cloudinary.com\/blog\/questions\/how-to-check-for-not-equal-in-python\/"},"author":{"name":"damjanantevski","@id":"https:\/\/cloudinary.com\/blog\/#\/schema\/person\/43592e43c12520a1e867d456b1e8cf7e"},"headline":"How to check for not equal in Python","datePublished":"2025-11-07T22:59:50+00:00","dateModified":"2025-11-07T22:59:51+00:00","mainEntityOfPage":{"@id":"https:\/\/cloudinary.com\/blog\/questions\/how-to-check-for-not-equal-in-python\/"},"wordCount":464,"publisher":{"@id":"https:\/\/cloudinary.com\/blog\/#organization"},"image":{"@id":"https:\/\/cloudinary.com\/blog\/questions\/how-to-check-for-not-equal-in-python\/#primaryimage"},"thumbnailUrl":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1762556370\/how_to_check_for_not_equal_in_python_featured_image\/how_to_check_for_not_equal_in_python_featured_image.jpg?_i=AA","keywords":["Questions"],"inLanguage":"en-US","copyrightYear":"2025","copyrightHolder":{"@id":"https:\/\/cloudinary.com\/#organization"}},{"@type":"WebPage","@id":"https:\/\/cloudinary.com\/blog\/questions\/how-to-check-for-not-equal-in-python\/","url":"https:\/\/cloudinary.com\/blog\/questions\/how-to-check-for-not-equal-in-python\/","name":"How to check for not equal in Python","isPartOf":{"@id":"https:\/\/cloudinary.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/cloudinary.com\/blog\/questions\/how-to-check-for-not-equal-in-python\/#primaryimage"},"image":{"@id":"https:\/\/cloudinary.com\/blog\/questions\/how-to-check-for-not-equal-in-python\/#primaryimage"},"thumbnailUrl":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1762556370\/how_to_check_for_not_equal_in_python_featured_image\/how_to_check_for_not_equal_in_python_featured_image.jpg?_i=AA","datePublished":"2025-11-07T22:59:50+00:00","dateModified":"2025-11-07T22:59:51+00:00","description":"In code reviews and forum threads, one of the most common beginner questions is how to compare values correctly in Python. The confusion usually starts","breadcrumb":{"@id":"https:\/\/cloudinary.com\/blog\/questions\/how-to-check-for-not-equal-in-python\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/cloudinary.com\/blog\/questions\/how-to-check-for-not-equal-in-python\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/cloudinary.com\/blog\/questions\/how-to-check-for-not-equal-in-python\/#primaryimage","url":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1762556370\/how_to_check_for_not_equal_in_python_featured_image\/how_to_check_for_not_equal_in_python_featured_image.jpg?_i=AA","contentUrl":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1762556370\/how_to_check_for_not_equal_in_python_featured_image\/how_to_check_for_not_equal_in_python_featured_image.jpg?_i=AA","width":2000,"height":1100},{"@type":"BreadcrumbList","@id":"https:\/\/cloudinary.com\/blog\/questions\/how-to-check-for-not-equal-in-python\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/cloudinary.com\/blog\/"},{"@type":"ListItem","position":2,"name":"How to check for not equal in Python"}]},{"@type":"WebSite","@id":"https:\/\/cloudinary.com\/blog\/#website","url":"https:\/\/cloudinary.com\/blog\/","name":"Cloudinary Blog","description":"","publisher":{"@id":"https:\/\/cloudinary.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/cloudinary.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/cloudinary.com\/blog\/#organization","name":"Cloudinary Blog","url":"https:\/\/cloudinary.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/cloudinary.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1649718331\/Web_Assets\/blog\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877.png?_i=AA","contentUrl":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1649718331\/Web_Assets\/blog\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877.png?_i=AA","width":312,"height":60,"caption":"Cloudinary Blog"},"image":{"@id":"https:\/\/cloudinary.com\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/cloudinary.com\/blog\/#\/schema\/person\/43592e43c12520a1e867d456b1e8cf7e","name":"damjanantevski","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/cloudinary.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/3b40c995531fe4d510212a06c9d4fc666d2cb8efbfebc98a94191701accf4817?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/3b40c995531fe4d510212a06c9d4fc666d2cb8efbfebc98a94191701accf4817?s=96&d=mm&r=g","caption":"damjanantevski"}}]}},"jetpack_featured_media_url":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1762556370\/how_to_check_for_not_equal_in_python_featured_image\/how_to_check_for_not_equal_in_python_featured_image.jpg?_i=AA","_links":{"self":[{"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/posts\/39185","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/users\/88"}],"replies":[{"embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/comments?post=39185"}],"version-history":[{"count":1,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/posts\/39185\/revisions"}],"predecessor-version":[{"id":39189,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/posts\/39185\/revisions\/39189"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/media\/39188"}],"wp:attachment":[{"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/media?parent=39185"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/categories?post=39185"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/tags?post=39185"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}