Python学习笔记 列表基本使用&列表功能&数学函数、math模块与随机数

本文介绍了Python中列表的基本使用,包括创建、索引、遍历、切片、重复、成员判断、合并和删除等操作。此外,还探讨了列表的增删改查功能,如append、insert、extend、pop、remove、clear等。接着,文章讲解了数学函数,如max、min、abs、round,以及math模块中的pow、ceil、floor、sqrt。最后,涉及了随机数的生成,如randint、randrange、choice、random和shuffle,并给出了四个习题以巩固所学知识。

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

一、列表基本使用

1.创建列表:

列表名称 = [数据1,数据2, …]

说明:使用[ ]表示创建列表

​ 列表中存储的数据被称为元素

注:列表中可以存储不同数据类型的元素。

代码演示:
#1.创建列表
#1.1创建一个空列表
list1 = []
print(list1)
# 运行结果:
[]

#1.2创建一个带有元素的列表
list2 = [52,463,6,473,53,65]
print(list2)
# 运行结果:
[52, 463, 6, 473, 53, 65]

#2.思考问题:列表中能不能存储不同类型的数据?
list3 = ['abc',10,3.14,True]
print(list3)
# 运行结果:
['abc', 10, 3.14, True]

2.列表的索引/下标:

​ 列表中的元素被从头到尾自动进行了编号,编号从0开始,这个编号被称为索引,角标或者下标

​ 索引的取值范围:0~元素的个数 -1【列表的长度 -1】

​ 超过索引的范围:列表越界

代码演示:
#创建列表
list1 = [5,51,6,76,98,3]

#需求:获取索引为3的位置上的元素
num = list1[3]
print(num)
# 运行结果:
76

# 需求:获取索引为6的位置上的元素

print(list1[6])

# 运行结果:
IndexError: list index out of range
# 超出索引范围报错

索引值为负数时列表从后向前输出

ages = [1, 2, 3, 4, 5]
print(ages[-1])  # 倒数第1个
print(ages[-2])  # 倒数第2个

# 运行结果:
5
4

4. 遍历列表:

1.元素遍历:
ages = [11, 22, 33, 44, 55]
for n in ages:
    print(n)  

# 运行结果:
11
22
33
44
55

2.下标遍历:
ages = [11, 22, 33, 44, 55]
for i in range(len(ages)):
    print(i, ages[i])  # 下标
   
  
# 运行结果:
如上个程序结果

3.枚举/列举:
ages = [11, 22, 33, 44, 55]
for i,n in enumerate(ages):
    print(i, n)  # 下标和元素   
    
  
# 运行结果:
如上个程序结果

4.从后往前遍历:
ages = [11, 22, 33, 44, 55]
for i in range(len(ages)-1, -1, -1):
    print(i, ages[i])   
    
  
# 运行结果:
4 55
3 44
2 33
1 22
0 11


5.切片截取:

切片, 截取 [start:stop:step] => 范围(start, stop) 包含start,不包含stop
ages = [1, 2, 3, 4, 5, 6, 7, 8, 9]
print(ages[:])  # [1, 2, 3, 4, 5, 6, 7, 8, 9]
print(ages[3:])  # [4, 5, 6, 7, 8, 9]
print(ages[:4])  # [1, 2, 3, 4]
print(ages[4:7])  # [5, 6, 7]
print(ages[::-1])  # 倒序 [9, 8, 7, 6, 5, 4, 3, 2, 1]*经常使用*
print(ages[::2])  # [1, 3, 5, 7, 9]
print(ages[4:1:-1])  # [5, 4, 3]

6. 列表的重复:

可以通过list*int的形式重复列表
ages = [1, 2, 3]
print([1,2,3] * 3) 


# 运行结果:
[1, 2, 3, 1, 2, 3, 1, 2, 3]

7. 判断列表的成员:

通过成员运算符 in、not in 来进行列表成员的判断
ages = [1, 2, 3]

print(4 in ages)  # True
print(4 not in ages)  # False

8. 合并列表:

print([1,2,3] + [4,5,6])  # [1, 2, 3, 4, 5, 6]

9.列表的删除:

ages = [1,2, 3, 4, 5, 6, 7, 8, 9]
del ages[0]
print(ages)  # [2, 3, 4, 5, 6, 7, 8, 9]

二、列表的功能

1.列表的函数/功能

内置函数:print(), len()

2.增删改查

1)列表的增加操作:

append(n)
在列表的末尾插入元素
nums = [2, 3, 4]
nums.append(5)
print(nums)  # [2, 3, 4, 5]
insert(i, n)
在列表的指定下标位置插入元素
nums = [2, 3, 4]
nums.insert(2, 5)  # [2, 3, 5, 4]
print(nums)
extend()
将另一个列表中的每个元素都添加到列表末尾
nums = [2, 3, 4]
nums.extend([5, 6, 7])  # [2, 3, 4, 5, 6, 7]
# nums.append([5, 6, 7])  # [2, 3, 4, [5, 6, 7]]
print(nums)

2)列表的删除操作

pop(n)
根据下标删除对应的元素, 默认删除最后一个元素
stars = ["宝强", "乃亮", "伊琍", "羽凡", "霆锋"]
# stars.pop()  # ['宝强', '乃亮', '伊琍', '羽凡']
n = stars.pop(1)  # ['宝强', '伊琍', '羽凡', '霆锋']
print(stars)
print(n)  # n是删除的那个元素

remove(n)

删除指定的第一个元素
nums = [1, 2, 2, 2, 2, 3, 3, 4]
nums.remove(2)  # [1, 2, 2, 2, 3, 3, 4]
print(nums)
删除所有指定元素
nums = [1, 2, 2, 2, 2, 3, 3, 4]
for _ in range(nums.count(2)):
    nums.remove(2)

print(nums) # [1, 3, 3, 4]

clear()

清空列表
nums = [1,2,3,4,5,6,7]
nums.clear()
print(nums)  # []

3)列表的修改操作

根据元素下标进行重新赋值进行修改。
nums = [1,2,3,4,5,6,7]
nums[0] = 99
print(nums)  # [99, 2, 3, 4, 5, 6, 7]

3)列表的修改操作

单个查询:
nums = [1,2,3,4,5,6,7]
print(nums[0])
全部查询(遍历):
ages = [11, 22, 33, 44, 55]
for n in ages:
    print(n) 
index()查询:
#找到列表中第一次出现指定元素的下标, 如果不存在则报错

l = [1,2,3,4,2,2,2,2,4]
print(l.index(2))
# print(l.index(20))

三、数学函数与随机数

1.数学函数

max:求最大值

print(max([1, 2, 3, 1])) # 3

min:求最小值

print(min([1, 2, 3, 1])) # 1

abs:求绝对值

print(abs(-2))  # 2

round:四舍五入

#返回浮点数x的四舍五入值,如果给出n值,则表示舍入到小数点后几位

print(round(34.46))  # 34
print(round(34.46, 1))  # 34.5

2.math模块

pow(n,m):n的m次幂

import math
print(math.pow(2, 4), 2**4, pow(2, 4))  # 16.0 16 16

ceil():向上取整

import math
print(math.ceil(3.1))  #  4

floor():向下取整

import math
print(math.floor(3.9))  #  3

sqrt(n):n开平方

import math
print(math.sqrt(81))  #  9
注意:在使用以上函数时必须引入math!!!

3.随机数

randint(start, stop)

从范围[start, stop]中随机取一个数
print(random.randint(1, 3))  # 范围: 1,3,5,7,9

randrange(start, stop, step)

从范围[start, stop)中随机取一个数
print(random.randrange(1, 10, 2))  # 范围: 1,3,5,7,9

choice()

从指定的列表中(序列)随机获取一个
stars = ['杰伦', '俊杰', '奕迅', '力宏', '晨宇']
print(random.choice(stars))

random()

从范围[0,1)中随机取一个小数
print(random.random())
print(random.uniform(2, 4))  # 从[2,4] 取一个随机小数

shuffle()

将列表打乱
l = [1,2,3,4,5]
random.shuffle(l)
print(l)

四、习题

1.给定一个列表:将列表中指定的某个元素全部删除

2.自定义一个列表,最大的与第一个元素交换,最小的与最后一个元素交换,输出列表

3,对称列表. 传入一个列表,元素类型与个数皆未知,返回新列表,由原列表的元素正序反序拼接而成;

如传入[“One”, “Two” ,”Three”] 返回[“One”, “Two”, “Three” ,”Three” ,”Two”, “One”]

4,列表去重, 将下面的列表中重复的元素去除

 明天发帖附答案!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值