Почему моя функция только перебирает три элемента в моем списке - PullRequest
1 голос
/ 02 августа 2011

Я пытаюсь перебрать все элементы (8 из них) в моем списке, но моя функция - предоставить мне только 4 из них.Это для приложения, которое я делаю как личный проект.

import urllib


def get_followers():
    count = 0
    link = ['http://twitter.com/statuses/user_timeline.xml?screen_name=beratmahmuzlu',     'http://twitter.com/statuses/user_timeline.xml?screen_name=lidiazuin', 'http://twitter.com/statuses/user_timeline.xml?screen_name=kelewele_boham', 'http://twitter.com/statuses/user_timeline.xml?screen_name=AwangHafizam', 'http://twitter.com/statuses/user_timeline.xml?screen_name=BRAYANLVN', 'http://twitter.com/statuses/user_timeline.xml?screen_name=zezol_pl', 'http://twitter.com/statuses/user_timeline.xml?screen_name=brysonwong', 'http://twitter.com/statuses/user_timeline.xml?screen_name=racsozara']
    while count < len(link):
        print link[count]
        link.pop()
        count = count + 1

Ответы [ 3 ]

9 голосов
/ 02 августа 2011

Вы выводите список из списка и выводите его из списка.

Вместо этого попробуйте цикл for:

for lnk in link:
    print lnk
3 голосов
/ 02 августа 2011

link.pop () удаляет элемент, а len (ссылка) дает вам новую длину списка на каждой итерации, зацикливая таким образом только половину вашего списка.

def get_followers():
    count = 0
    link = [0, 1, 2, 3, 4, 5, 6, 7, 8]
    l = len(link)
    while count < l:
        print link.pop()
        count = count + 1

Это правильная реализация, хотя в python есть намного более чистый способ перебора списка, это один из самых простых:

def get_followers():
    link = [0, 1, 2, 3, 4, 5, 6, 7, 8]
    for l in link:
        print l
1 голос
/ 02 августа 2011

Я пытаюсь перебрать все элементы (8 из них) в моем списке

Затем сделайте это.Не устанавливайте переменную счетчика, постоянно используйте ее для индексации в списке, удаления элементов из списка и увеличения счетчика.Просто прокрутите элементы.

Если бы я попросил вас разбить дюжину яиц, вам не нужно было бы писать на них цифры или думать о том, сколько яиц вы уже взломали.Вы бы просто сделали это.

Так что просто сделайте это.

for link in links:
    print link
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...