python学习笔记四:循环和列表

本文主要介绍了Python中的循环和列表。详细讲解了循环嵌套的执行原理,列表的特性,包括创建空列表和存储多种类型数据的能力。此外,还阐述了如何获取列表元素,如单个元素和遍历,并探讨了向列表中添加元素的方法,包括单个元素的添加和批量添加。最后,提到了作业练习,包含选择题和编程题,以巩固所学知识。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

循环和列表

一、循环嵌套

循环嵌套的执行原则:外循环一次,内循环完整

for x in range(5):
	for y in range(2, 8):
		print(x, y)

二、认识列表

1.列表

  • 列表长什么样子:列表是容器型数据类型(序列);将[]作为容器的标志,里面多个元素用逗号隔开:[元素1,元素2,元素3,…]
  • 列表的特点:列表是可变的(元素的个数、值和顺序可变) - 增、删、改;列表是有序的 - 支持下标操作
  • 列表对元素的要求:没有要求(不管什么类型的数据都可以作为列表的元素)
(1)空列表

格式:len(列表) - 获取列表中元素的个数

list1 = []
list2 = [ ]
print(type(list1), type(list2))
print(bool(list1), bool(list2))
print(len(list1), len(list2))
(2)列表可以同时保存多个数据
list3 = [89, 90, 76, 99, 58]
print(list3)

list4 = ['abc', 18, '男', 100, True]
print(list4)

list5 = [10,12.5,True,'abc',[1,0],{'a':10},(20,9),lambda x:x*2]
print(list5)

list6 = [[1,2,3],
         [4,5,6],
         [7,8,9]
]

print(len(list6))

2.查 - 获取元素

查分为三种情况:获取单个元素、切片、遍历(一个一个的取)

(1)获取单个元素
  • 语法:列表[下标]
  • 功能:获取列表中指定下标对应的元素
  • 说明:
    列表 - 任何结果是列表的表达式,比如:保存列表的变量、具体的列表值等
    [] - 固定写法
    下标 - 下标又叫索引,是元素在有序序列中位置信息。
    python中有序序列中每个元素都有两组下标值,分别是:从前往后从0开始递增的下标值;从后往前从-1开始递减的下标值
  • 注意:下标不能越界

例如:

list3 = [89, 90, 76, 99, 58]
names = ['甄姬','貂蝉','韩信','吕布','赵云','后羿','鲁班','狄仁杰']
print(names[1])
print(names[-1])
print(names[3])
(2)遍历
  • 方式1 - 直接获取列表中的每个元素
    for 变量 in 列表:
    循环体
for x in names:
    print(x)
  • 方式2 - 先获取到每个元素的下标值,然后通过下标再获取元素
    for 下标 in range(len(列表)):
    循环体

    for 下标 in range(-1, -len(列表)-1, -1):
    循环体

    range(len(列表)) == range(列表中元素的个数)

    for index in range(len(names)):
        print(index,names[index])
    
  • 方式3 - 同时获取列表中每个元素和元素对应的下标
    for 下标,元素 in enumerate(列表):
    循环体

for index,item in enumerate(names):
print(index,item)
```

三、添加元素

1.添加单个元素

格式:

列表.append(元素) - 在列表的最后添加一个元素
列表.insert(下标,元素) - 在指定下标对应的元素前插入指定元素

例如:

movies = ['五十六度灰','哥斯拉大战金刚','桃花侠大战菊花怪']
print(movies)

movies.append('肖申克的救赎')
print(movies)

movies.insert(2, '沉默的羔羊')
print(movies)

2.批量添加

格式:

列表1.extend(列表2) - 将列表2元素全部添加到列表1的后面

例如:

movies.extend(['让子弹飞','触不可及','V字仇杀对'])
print(movies)

第一周作业练习:

一、选择题

  1. 下列变量名中不合法的是?(C)

    A. abc

    B. Npc

    C. 1name

    D ab_cd

  2. 下列选项中不属于关键字的是?(B)

    A. and

    B. print

    C. True

    D. in

  3. 下面哪个选项对应的代码写法是正确的?(C)

    A.

    print('Python')
      print('新手村')
    

    B.

    print('Python') print('新手村')
    

    C.

    print('Python')
    print('新手村')
    

    D.

    print('Python''新手村')
    
  4. 下面选项中能打印出50的是?B

    A.

    print('100 - 50')
    

    B.

    print(100 - 50)
    
  5. 关于引号,下面选项中使用正确的是?D

    A.

    print('hello)
    

    B.

    print("hello')
    

    C.

    print(“hello”)
    

    D.

    print("hello")
    

二、编程题

  1. 写代码在控制台打印 good good study, day day up!

    print('good good study, day day up!')
    
  2. 写代码在控制台打印5次 you see see, one day day!

    for x in range(5):
        print('you see see, one day day!')
    
  3. 写代码打印数字 11、12、13、… 21

    for x in range(11, 22):
        print(x)
    
  4. 写代码打印数字 11,13,15,17,…99

    for x in range(11, 100, 2):
        print(x)
    
  5. 写代码打印数字:10、9、8、7、6、5

    for x in range(10, 4, -1):
        print(x)
    
  6. 写代码计算:1+2+3+4+…+20 的和

    sum = 0
    for x in range(1, 21):
        sum += x
    print('和:',sum)
    
  7. 写代码计算100以内所有偶数的和

    sum = 0
    for x in range(0, 99, 2):
        sum += x
    print('和:',sum)
    
  8. 写代码统计100~200中个位数是3的数的个数

    count = 0
    for x in range(103, 200, 10):
        count += 1
    print('个数:', count)
    
  9. 写代码计算2*3*4*5*...*9的结果

    num = 1
    for x in range(2, 10):
        num *= x
    print('结果:', num)
    
  10. 输入一个数,如果输入的数是偶数就打印偶数否则打印奇数

    n = int(input('请输入:'))
    if n % 2 == 0:
        print('偶数')
    else:
        print('奇数')
    
  11. 统计1000以内能被3整除但是不能被5整除的数的个数。

    num = 0
    for x in range(0, 1000, 3):
        if x % 5 != 0:
            num += 1
    print('个数:', num)
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值