title: 'AttributeError: 'tuple' object has no attribute 'lower'' - Why doesn't the '.lower()' method doesn't work here in Python?
body: <p>I am currently learning python and doing the exercises in the module. I have learned previously how to remove any case letter in the string, so it will be easier for the user to use it later on. But it seems like when I applied the ' XXX.lower() ' method to my code, it doesnt work. It works just fine without the '.lower()' method but I really want to know why it doest work ? Here's my code :</p>
  <pre><code># bird names list
  bird_names = (&quot;Parrot&quot;, &quot;Owl&quot;, &quot;Pigeon&quot;, &quot;Crow&quot;, &quot;Peacock&quot;, &quot;Hen&quot;)
  
  # bird guess
  bird_guess = input(&quot;Enter a bird name (Guess 1): &quot;)
  
  # nested conditions starts here
  if bird_guess.lower() in bird_names.lower():
    print(&quot;Yes, 1st try!&quot;)
  else:
    bird_guess = input(&quot;Enter a bird name (Guess 2): &quot;)
    if bird_guess.lower() in bird_names.lower():
      print(&quot;Yes, 2nd try!&quot;)
    else:
      bird_guess = input(&quot;Enter a bird name (Guess 3): &quot;)
      if bird_guess.lower() in bird_names.lower():
        print(&quot;Yes, 3rd try!&quot;)
      else:
        print(&quot;Sorry, out of tries.&quot;)
  </code></pre>