How to compare specific items in a string python












-4















E.g. in a given input the fourth digit must be one greater than the fifth digit



input = "5000-0000-0000"    
if input[3] != input[5] + 1
return false









share|improve this question





























    -4















    E.g. in a given input the fourth digit must be one greater than the fifth digit



    input = "5000-0000-0000"    
    if input[3] != input[5] + 1
    return false









    share|improve this question



























      -4












      -4








      -4


      1






      E.g. in a given input the fourth digit must be one greater than the fifth digit



      input = "5000-0000-0000"    
      if input[3] != input[5] + 1
      return false









      share|improve this question
















      E.g. in a given input the fourth digit must be one greater than the fifth digit



      input = "5000-0000-0000"    
      if input[3] != input[5] + 1
      return false






      python






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited Nov 26 '18 at 3:07









      Larry Lustig

      40.4k1284130




      40.4k1284130










      asked Nov 26 '18 at 3:04







      user10703449































          1 Answer
          1






          active

          oldest

          votes


















          1














          If you think about what input[3] and input[5] are, you will pretty quickly realize they are characters and not numbers that can be added or compared with mathematical operations (think about what would happen if you wrote input = "Andrew Francis").



          You can see this by using print(type(input[3])).



          Fortunately, if you have a string that contains only characters that make up a valid number, you can convert it to (for instance) an integer using the int() function. So, try print(type(int(input[3]))) and see what you get.






          share|improve this answer
























          • Thank you Larry, Issue here is the input data is a mock credit card number that includes dashes, how would I go about converting just inputs 3 and 5 to integers and then performing the comparison?

            – user10703449
            Nov 26 '18 at 3:17













          • As cited in the answer, if you call the int() function on the string you're interested in, you'll get an integer value. So, int(input[3]) returns an integer and int(input[5]) returns the other integer you're interested in. Those values can be added to, compared, etc.

            – Larry Lustig
            Nov 26 '18 at 3:24











          Your Answer






          StackExchange.ifUsing("editor", function () {
          StackExchange.using("externalEditor", function () {
          StackExchange.using("snippets", function () {
          StackExchange.snippets.init();
          });
          });
          }, "code-snippets");

          StackExchange.ready(function() {
          var channelOptions = {
          tags: "".split(" "),
          id: "1"
          };
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function() {
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled) {
          StackExchange.using("snippets", function() {
          createEditor();
          });
          }
          else {
          createEditor();
          }
          });

          function createEditor() {
          StackExchange.prepareEditor({
          heartbeatType: 'answer',
          autoActivateHeartbeat: false,
          convertImagesToLinks: true,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: 10,
          bindNavPrevention: true,
          postfix: "",
          imageUploader: {
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          },
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          });


          }
          });














          draft saved

          draft discarded


















          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53474279%2fhow-to-compare-specific-items-in-a-string-python%23new-answer', 'question_page');
          }
          );

          Post as a guest















          Required, but never shown
























          1 Answer
          1






          active

          oldest

          votes








          1 Answer
          1






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes









          1














          If you think about what input[3] and input[5] are, you will pretty quickly realize they are characters and not numbers that can be added or compared with mathematical operations (think about what would happen if you wrote input = "Andrew Francis").



          You can see this by using print(type(input[3])).



          Fortunately, if you have a string that contains only characters that make up a valid number, you can convert it to (for instance) an integer using the int() function. So, try print(type(int(input[3]))) and see what you get.






          share|improve this answer
























          • Thank you Larry, Issue here is the input data is a mock credit card number that includes dashes, how would I go about converting just inputs 3 and 5 to integers and then performing the comparison?

            – user10703449
            Nov 26 '18 at 3:17













          • As cited in the answer, if you call the int() function on the string you're interested in, you'll get an integer value. So, int(input[3]) returns an integer and int(input[5]) returns the other integer you're interested in. Those values can be added to, compared, etc.

            – Larry Lustig
            Nov 26 '18 at 3:24
















          1














          If you think about what input[3] and input[5] are, you will pretty quickly realize they are characters and not numbers that can be added or compared with mathematical operations (think about what would happen if you wrote input = "Andrew Francis").



          You can see this by using print(type(input[3])).



          Fortunately, if you have a string that contains only characters that make up a valid number, you can convert it to (for instance) an integer using the int() function. So, try print(type(int(input[3]))) and see what you get.






          share|improve this answer
























          • Thank you Larry, Issue here is the input data is a mock credit card number that includes dashes, how would I go about converting just inputs 3 and 5 to integers and then performing the comparison?

            – user10703449
            Nov 26 '18 at 3:17













          • As cited in the answer, if you call the int() function on the string you're interested in, you'll get an integer value. So, int(input[3]) returns an integer and int(input[5]) returns the other integer you're interested in. Those values can be added to, compared, etc.

            – Larry Lustig
            Nov 26 '18 at 3:24














          1












          1








          1







          If you think about what input[3] and input[5] are, you will pretty quickly realize they are characters and not numbers that can be added or compared with mathematical operations (think about what would happen if you wrote input = "Andrew Francis").



          You can see this by using print(type(input[3])).



          Fortunately, if you have a string that contains only characters that make up a valid number, you can convert it to (for instance) an integer using the int() function. So, try print(type(int(input[3]))) and see what you get.






          share|improve this answer













          If you think about what input[3] and input[5] are, you will pretty quickly realize they are characters and not numbers that can be added or compared with mathematical operations (think about what would happen if you wrote input = "Andrew Francis").



          You can see this by using print(type(input[3])).



          Fortunately, if you have a string that contains only characters that make up a valid number, you can convert it to (for instance) an integer using the int() function. So, try print(type(int(input[3]))) and see what you get.







          share|improve this answer












          share|improve this answer



          share|improve this answer










          answered Nov 26 '18 at 3:11









          Larry LustigLarry Lustig

          40.4k1284130




          40.4k1284130













          • Thank you Larry, Issue here is the input data is a mock credit card number that includes dashes, how would I go about converting just inputs 3 and 5 to integers and then performing the comparison?

            – user10703449
            Nov 26 '18 at 3:17













          • As cited in the answer, if you call the int() function on the string you're interested in, you'll get an integer value. So, int(input[3]) returns an integer and int(input[5]) returns the other integer you're interested in. Those values can be added to, compared, etc.

            – Larry Lustig
            Nov 26 '18 at 3:24



















          • Thank you Larry, Issue here is the input data is a mock credit card number that includes dashes, how would I go about converting just inputs 3 and 5 to integers and then performing the comparison?

            – user10703449
            Nov 26 '18 at 3:17













          • As cited in the answer, if you call the int() function on the string you're interested in, you'll get an integer value. So, int(input[3]) returns an integer and int(input[5]) returns the other integer you're interested in. Those values can be added to, compared, etc.

            – Larry Lustig
            Nov 26 '18 at 3:24

















          Thank you Larry, Issue here is the input data is a mock credit card number that includes dashes, how would I go about converting just inputs 3 and 5 to integers and then performing the comparison?

          – user10703449
          Nov 26 '18 at 3:17







          Thank you Larry, Issue here is the input data is a mock credit card number that includes dashes, how would I go about converting just inputs 3 and 5 to integers and then performing the comparison?

          – user10703449
          Nov 26 '18 at 3:17















          As cited in the answer, if you call the int() function on the string you're interested in, you'll get an integer value. So, int(input[3]) returns an integer and int(input[5]) returns the other integer you're interested in. Those values can be added to, compared, etc.

          – Larry Lustig
          Nov 26 '18 at 3:24





          As cited in the answer, if you call the int() function on the string you're interested in, you'll get an integer value. So, int(input[3]) returns an integer and int(input[5]) returns the other integer you're interested in. Those values can be added to, compared, etc.

          – Larry Lustig
          Nov 26 '18 at 3:24




















          draft saved

          draft discarded




















































          Thanks for contributing an answer to Stack Overflow!


          • Please be sure to answer the question. Provide details and share your research!

          But avoid



          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.


          To learn more, see our tips on writing great answers.




          draft saved


          draft discarded














          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53474279%2fhow-to-compare-specific-items-in-a-string-python%23new-answer', 'question_page');
          }
          );

          Post as a guest















          Required, but never shown





















































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown

































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown







          Popular posts from this blog

          Wiesbaden

          Marschland

          Dieringhausen