What's the difference between using range() and not using it in a for loop?












-4















I have this:



colors = ["blue","brown","red","yellow","green"]


1.



for color in colors:


2.



for index in range(len(colors)):


what is the difference between using 1 and 2 ?










share|improve this question




















  • 2





    Do you get the same result when running each line? If not, there is your difference.

    – usr2564301
    Nov 21 '18 at 22:42
















-4















I have this:



colors = ["blue","brown","red","yellow","green"]


1.



for color in colors:


2.



for index in range(len(colors)):


what is the difference between using 1 and 2 ?










share|improve this question




















  • 2





    Do you get the same result when running each line? If not, there is your difference.

    – usr2564301
    Nov 21 '18 at 22:42














-4












-4








-4








I have this:



colors = ["blue","brown","red","yellow","green"]


1.



for color in colors:


2.



for index in range(len(colors)):


what is the difference between using 1 and 2 ?










share|improve this question
















I have this:



colors = ["blue","brown","red","yellow","green"]


1.



for color in colors:


2.



for index in range(len(colors)):


what is the difference between using 1 and 2 ?







python for-loop range element






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Nov 21 '18 at 22:51









Vasilis G.

3,9742924




3,9742924










asked Nov 21 '18 at 22:41









DeepstringsDeepstrings

11




11








  • 2





    Do you get the same result when running each line? If not, there is your difference.

    – usr2564301
    Nov 21 '18 at 22:42














  • 2





    Do you get the same result when running each line? If not, there is your difference.

    – usr2564301
    Nov 21 '18 at 22:42








2




2





Do you get the same result when running each line? If not, there is your difference.

– usr2564301
Nov 21 '18 at 22:42





Do you get the same result when running each line? If not, there is your difference.

– usr2564301
Nov 21 '18 at 22:42












2 Answers
2






active

oldest

votes


















5














When you say for color in colors: you are iterating over the items in the list.



for color in colors:
print(color)

>>> "blue"
>>> "brown"
>>> "red"
>>> "yellow"
>>> "green"


If you iterate over indices you get:



for index in range(len(colors)):
print(index)

>>> 0
>>> 1
>>> 2
>>> 3
>>> 4


You can get the two version together by using enumerate:



for c, color in enumerate(colors):
print(c, color)

>>> 0 "blue"
>>> 1 "brown"
>>> 2 "red"
>>> 3 "yellow"
>>> 4 "green"





share|improve this answer


























  • And you can get both with for index, color in enumerate(colors)

    – cricket_007
    Nov 21 '18 at 22:45



















0














With the first one you'll have access to local variable color within loop. It's also considered more pythonic.



With the second one you'll have access to the index instead which might be useful.



I'm not aware of performance difference but someone might be.






share|improve this answer
























    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%2f53421435%2fwhats-the-difference-between-using-range-and-not-using-it-in-a-for-loop%23new-answer', 'question_page');
    }
    );

    Post as a guest















    Required, but never shown

























    2 Answers
    2






    active

    oldest

    votes








    2 Answers
    2






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes









    5














    When you say for color in colors: you are iterating over the items in the list.



    for color in colors:
    print(color)

    >>> "blue"
    >>> "brown"
    >>> "red"
    >>> "yellow"
    >>> "green"


    If you iterate over indices you get:



    for index in range(len(colors)):
    print(index)

    >>> 0
    >>> 1
    >>> 2
    >>> 3
    >>> 4


    You can get the two version together by using enumerate:



    for c, color in enumerate(colors):
    print(c, color)

    >>> 0 "blue"
    >>> 1 "brown"
    >>> 2 "red"
    >>> 3 "yellow"
    >>> 4 "green"





    share|improve this answer


























    • And you can get both with for index, color in enumerate(colors)

      – cricket_007
      Nov 21 '18 at 22:45
















    5














    When you say for color in colors: you are iterating over the items in the list.



    for color in colors:
    print(color)

    >>> "blue"
    >>> "brown"
    >>> "red"
    >>> "yellow"
    >>> "green"


    If you iterate over indices you get:



    for index in range(len(colors)):
    print(index)

    >>> 0
    >>> 1
    >>> 2
    >>> 3
    >>> 4


    You can get the two version together by using enumerate:



    for c, color in enumerate(colors):
    print(c, color)

    >>> 0 "blue"
    >>> 1 "brown"
    >>> 2 "red"
    >>> 3 "yellow"
    >>> 4 "green"





    share|improve this answer


























    • And you can get both with for index, color in enumerate(colors)

      – cricket_007
      Nov 21 '18 at 22:45














    5












    5








    5







    When you say for color in colors: you are iterating over the items in the list.



    for color in colors:
    print(color)

    >>> "blue"
    >>> "brown"
    >>> "red"
    >>> "yellow"
    >>> "green"


    If you iterate over indices you get:



    for index in range(len(colors)):
    print(index)

    >>> 0
    >>> 1
    >>> 2
    >>> 3
    >>> 4


    You can get the two version together by using enumerate:



    for c, color in enumerate(colors):
    print(c, color)

    >>> 0 "blue"
    >>> 1 "brown"
    >>> 2 "red"
    >>> 3 "yellow"
    >>> 4 "green"





    share|improve this answer















    When you say for color in colors: you are iterating over the items in the list.



    for color in colors:
    print(color)

    >>> "blue"
    >>> "brown"
    >>> "red"
    >>> "yellow"
    >>> "green"


    If you iterate over indices you get:



    for index in range(len(colors)):
    print(index)

    >>> 0
    >>> 1
    >>> 2
    >>> 3
    >>> 4


    You can get the two version together by using enumerate:



    for c, color in enumerate(colors):
    print(c, color)

    >>> 0 "blue"
    >>> 1 "brown"
    >>> 2 "red"
    >>> 3 "yellow"
    >>> 4 "green"






    share|improve this answer














    share|improve this answer



    share|improve this answer








    edited Nov 21 '18 at 22:45

























    answered Nov 21 '18 at 22:43









    berkelemberkelem

    9632721




    9632721













    • And you can get both with for index, color in enumerate(colors)

      – cricket_007
      Nov 21 '18 at 22:45



















    • And you can get both with for index, color in enumerate(colors)

      – cricket_007
      Nov 21 '18 at 22:45

















    And you can get both with for index, color in enumerate(colors)

    – cricket_007
    Nov 21 '18 at 22:45





    And you can get both with for index, color in enumerate(colors)

    – cricket_007
    Nov 21 '18 at 22:45













    0














    With the first one you'll have access to local variable color within loop. It's also considered more pythonic.



    With the second one you'll have access to the index instead which might be useful.



    I'm not aware of performance difference but someone might be.






    share|improve this answer




























      0














      With the first one you'll have access to local variable color within loop. It's also considered more pythonic.



      With the second one you'll have access to the index instead which might be useful.



      I'm not aware of performance difference but someone might be.






      share|improve this answer


























        0












        0








        0







        With the first one you'll have access to local variable color within loop. It's also considered more pythonic.



        With the second one you'll have access to the index instead which might be useful.



        I'm not aware of performance difference but someone might be.






        share|improve this answer













        With the first one you'll have access to local variable color within loop. It's also considered more pythonic.



        With the second one you'll have access to the index instead which might be useful.



        I'm not aware of performance difference but someone might be.







        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered Nov 21 '18 at 22:43









        kabdullakabdulla

        2,3271725




        2,3271725






























            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%2f53421435%2fwhats-the-difference-between-using-range-and-not-using-it-in-a-for-loop%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

            How to send String Array data to Server using php in android

            Title Spacing in Bjornstrup Chapter, Removing Chapter Number From Contents

            Is anime1.com a legal site for watching anime?