如何从Python中的for循环中的列表中获取某些值?

时间:2018-06-03 21:33:54

标签: python python-3.x list for-loop

如果我有一个清单:

myList = ['car a', 5000, 'great value', 'car b', 8000, 'good value']

我如何在for循环中执行此操作:
(print(myList[0]) print(myList[3]))

将3添加到列表末尾。

我试过了:

for carName in myList:
    carName = myList[0 + 3]> # I am stuck here
    print carName

感谢您的帮助!

4 个答案:

答案 0 :(得分:0)

这是你可以使用for循环来实现的目的:

myList = ['car a', 5000, 'great value', 'car b', 8000, 'good value']

for carName in range(0, len(myList), 3):
    print(myList[carName])

答案 1 :(得分:0)

您可以使用[start:end:step]表示法对列表进行切片,仅提供步骤组件:

myList = ['car a', 5000, 'great value', 'car b', 8000, 'good value']

for item in myList[::3]:
    print(item)

# car a
# car b

为避免为此目的构建列表的费用,您可以使用itertools.islice

from itertools import islice

for item in islice(myList, 0, None, 3):
    print(item)

答案 2 :(得分:0)

输入步长-3

For循环的语法-

def bio(request, slug):
   producer_list = Producers.objects.all().filter(slug=slug)
   samples_list = Samples.objects.all()
   queryset = sorted(
            chain(producer_list, samples_list),
            key=lambda instance: instance.producer_id)

Ex-打印偶数的代码

{% for sample in queryset %}
                    <li>
                        <span>Artist: {{ sample.artist }}</span> <br/>
                        <span>Title: {{ sample.title }}</span> <br/>
                        <span>Title: {{ sample.producer_id }}</span> <br/>
                        <hr/>
                    </li>
{% endfor %}

output-2,4,6,8,10

答案 3 :(得分:0)

我认为您正在寻找的是模%3 == 0

myList = ['car a', 5000, 'great value', 'car b', 8000, 'good value']

无论列表有多大,这将打印第一个元素和三个元素的任意倍数。

for i, x in enumerate(myList):
    if i % 3 == 0:
        print(myList[i])