python基础知识四(列表、元组、函数)

目录

[list 列表:](#list 列表:)

[1. 列表的概念](#1. 列表的概念)

[2. 列表的特点](#2. 列表的特点)

[3. 列表的创建](#3. 列表的创建)

[4. 列表的索引](#4. 列表的索引)

[5. 列表的切片](#5. 列表的切片)

[6. 列表的遍历](#6. 列表的遍历)

[7. 列表的常用方法](#7. 列表的常用方法)

[tuple 元组:](#tuple 元组:)

[1. 什么是元组?](#1. 什么是元组?)

[2. 元组的定义](#2. 元组的定义)

[3. 元组的特点和作用](#3. 元组的特点和作用)

函数:

[1. 函数的概念](#1. 函数的概念)

[2. 函数的定义](#2. 函数的定义)

[3. 函数的调用](#3. 函数的调用)

[4. 函数的返回值](#4. 函数的返回值)

[5. 函数的参数](#5. 函数的参数)

[6. 函数的作用域](#6. 函数的作用域)

[7. 函数的嵌套调用](#7. 函数的嵌套调用)

[8. 函数的递归调用](#8. 函数的递归调用)


list 列表:

1. 列表的概念

复制代码
1. 列表是一种有序的集合,可以随时添加和删除元素。
2. 列表是一种可变数据类型。

2. 列表的特点

复制代码
- 可以存储多个数据。
- 可以随机访问存储的数据。
- 可以存储相同数据类型的数据。
- 可以存储不同数据类型的数据。

3. 列表的创建

复制代码
- 使用列表字面量创建列表。
- 使用list()函数创建列表。
python 复制代码
# 1. 列表的创建
# 列表用[]定义,元素之间用逗号,分隔
list1 = [1, 2, 3, 4, 5]  # 列表字面量
list2 = list()  # 空列表
list3 = list([1, 2, 3, 4, 5])  # 使用list()函数创建列表
print(list1)
print(list2)
print(list3)

4. 列表的索引

复制代码
- 列表的索引从0开始。
- 列表的索引-1结束。
python 复制代码
# 2. 列表的索引
list1 = [1, 2, 3, 4, 5]
print(list1[0])  # 列表中 0 索引的元素
print(list1[-1])  # 列表中 -1 索引的元素  负数是从右到左(倒着数)
print(list1[-3])  # 列表中 -3 索引的元素

5. 列表的切片

复制代码
- 列表的切片是从左到右 从右到左。
python 复制代码
list1 = [1, 2, 3, 4, 5]
print(list1[0:3])  # 列表中 0 到 3 的元素
print(list1[2:])  # 列表中 2 到 最后的元素
print(list1[:3])  # 列表中 0 到 3 的元素
print(list1[:])  # 列表中 0 到 最后的元素

6. 列表的遍历

复制代码
- 使用for循环遍历列表。
- 使用while循环遍历列表。
python 复制代码
list2 = [1, 2, 3, 4, 5]
# for循环
for i in list2:
    print(i)
# while循环
i = 0
while i < len(list2):  # 注意:len()函数获取列表的长度
    print(list2[i])
    i += 1

7. 列表的常用方法

复制代码
- 列表的append()方法:在列表末尾添加新的对象。
- 列表的insert()方法:在给定位置插入新的对象。
- 列表的remove()方法:移除列表中某个值的第一个匹配项。
- 列表的pop()方法:移除列表中的一个元素,默认最后一个元素。
- 列表的index()方法:从列表中找到某个值,并返回第一个匹配项的索引。
- 列表的count()方法:计算某个值在列表中出现的次数。
- 列表的reverse()方法:将列表中元素的位置颠倒。
- 列表的sort()方法:对原列表进行排序。
- 列表的extend()方法:在列表末尾一次性追加另一个列表。
- 列表的copy()方法:创建一个列表的副本。
- 列表的clear()方法:清空列表。
- 列表的del()方法:删除列表的指定位置。
python 复制代码
list2 = [4, 23, 3, 8, 5, 9, 18, 2]
# 列表的append()方法:在列表末尾添加新的对象
list2.append(7)  # 在列表末尾添加7
print(list2)

# 列表的insert()方法:在给定位置插入新的对象
list2.insert(0, 0)  # 在0位置插入0
print(list2)

# 列表的remove()方法:移除列表中某个值的第一个匹配项
list2.remove(0)  # 移除列表中的0
print(list2)

# 列表的pop()方法:移除列表中的一个元素,默认最后一个元素
list2.pop()  # 移除列表中的最后一个元素
print(list2)

# 列表的index()方法:从列表中找到某个值,并返回第一个匹配项的索引
print(list2.index(2))  # 返回2的索引

# 列表的count()方法:计算某个值在列表中出现的次数
print(list2.count(2))  # 返回2出现的次数

# 列表的reverse()方法:将列表中元素的位置颠倒
list2.reverse()  # 将列表中元素的位置颠倒
print(list2)

# 列表的sort()方法:对原列表进行排序
list2.sort()  # 对原列表进行排序
print(list2)

# 列表的extend()方法:在列表末尾一次性追加另一个列表
list2.extend([6, 7, 8])  # 在列表末尾一次性追加[6, 7, 8]
print(list2)

# 列表的copy()方法:创建一个列表的副本
list3 = list2.copy()  # 创建一个列表的副本
print(list3)

# 列表的del()方法:删除列表的指定位置
del list2[5]  # 删除列表的5位置
print(list2)

# 列表的clear()方法:清空列表
list2.clear()  # 清空列表
print(list2)

tuple 元组:

1. 什么是元组?

复制代码
  元组是一种数据类型,类似于列表,但是元组是不可变的,一旦创建就不能修改。

2. 元组的定义

复制代码
  元组是用括号括起来的,元素之间用逗号隔开。
python 复制代码
# 1. 元组的定义
t = (1, 2, 3)
print(t)

3. 元组的特点和作用

复制代码
- 元组的特点:
    - 1. 元组是不可变的,一旦创建就不能修改。
    - 2. 元组可以包含任意类型的数据。
    - 3. 元组可以嵌套。
    - 4. 元组可以包含重复的数据。
- 元组的作用:
    - 1. 自动组包
    - 2. 自动解包
    - 3. 交换数据
    - 4. 让列表不可修改
python 复制代码
# 2. 元组的特点和作用
# 2.1 元组的特点
# 2.1.1 元组是不可变的,一旦创建就不能修改。
# t[0] = 100
# print(t)

# 2.1.2 元组可以包含任意类型的数据。
t = (1, 2, 3, 'a', 'b', 'c')
print(t)

# 2.1.3 元组可以嵌套。
t = (1, 2, 3, (1, 2, 3), (1, 2, 3))
print(t)

# 2.1.4 元组可以包含重复的数据。
t = (1, 2, 3, 1, 2, 3)
print(t)

# 2.2 元组的作用
# 2.2.1 自动组包
t = '元组1', '元组2', '元组3'
print(t)
# 2.2.2 自动解包
t = ('元组1', '元组2', '元组3')
a, b, c = t
print(a, b, c)

# 2.2.3 交换数据
a = 100
b = 200
a, b = b, a
print(a, b)
# 2.2.4 让列表不可修改
t = (1, 2, 3)
# t[0] = 100  # 报错
print(t)

函数:

1. 函数的概念

函数是一段可以重复使用的代码,可以提高代码的可读性和可维护性。

2. 函数的定义

复制代码
def 函数名(参数1, 参数2, ...):
    函数体
    return 返回值
python 复制代码
# 1. 函数的定义
def add(a, b):
    return a + b

3. 函数的调用

复制代码
print(函数名(参数1, 参数2, ...))
python 复制代码
# 2. 函数的调用
print(add(1, 2))

4. 函数的返回值

复制代码
return 返回值
python 复制代码
# 3. 函数的返回值
def add1():
    return 1 + 2  # 返回值


print(add1())

5. 函数的参数

复制代码
1. 形参:函数定义时的参数
2. 实参:函数调用时的参数
3. 默认参数:函数定义时,指定参数的默认值
4. 可变参数:函数定义时,指定参数的个数可变
5. 关键字参数:函数调用时,指定参数的名称
python 复制代码
# 4. 函数的参数
# 4.1 默认参数
def add2(a=1, b=2):
    return a + b


print(add2())  # 默认参数的调用
print(add2(1))  # 默认参数的调用 1是a的值
print(add2(1, 2))  # 默认参数的调用 1是a的值,2是b的值
print(add2(b=1, a=2))  # 默认参数的调用 2是a的值,1是b的值


# 4.2 可变参数
def add3(*args):
    return sum(args)


print(add3(1, 2, 3, 4, 5))  # 可变参数的调用 1,2,3,4,5是args的值


# 4.3 关键字参数
def add4(**kwargs):
    return sum(kwargs.values())  # 返回kwargs的所有值的和


print(add4(a=1, b=2, c=3, d=4, e=5))  # 关键字参数的调用 a=1,b=2,c=3,d=4,e=5是kwargs的值

6. 函数的作用域

复制代码
1. 局部变量:在函数内部定义的变量
2. 全局变量:在函数外部定义的变量
3. 全局变量在函数内部可以直接使用
4. 局部变量不能在函数外部直接使用
python 复制代码
# 5. 函数的作用域
# 5.1 局部变量
def add5():
    num_1 = 1
    num_2 = 2
    return num_1 + num_2


print(add5())

# 5.2 全局变量
a = 1
b = 2


def add6():
    return a + b


print(add6())

7. 函数的嵌套调用

复制代码
1. 函数内部可以调用其他函数
2. 函数内部调用函数时,必须使用全局变量
python 复制代码
# 6. 函数的嵌套调用
def add7():
    return add5()


print(add7())

8. 函数的递归调用

复制代码
1. 函数内部可以调用自身
2. 函数内部调用自身时,必须使用全局变量
3. 函数的递归调用必须有退出条件
python 复制代码
# 7. 函数的递归调用
def add8(n=1):
    if n == 1:
        return 1
    else:
        return n + add8(n - 1)


print(add8(10))
相关推荐
Ajiang282473530420 分钟前
对于C++中stack和queue的认识以及priority_queue的模拟实现
开发语言·c++
幽兰的天空25 分钟前
Python 中的模式匹配:深入了解 match 语句
开发语言·python
Theodore_10223 小时前
4 设计模式原则之接口隔离原则
java·开发语言·设计模式·java-ee·接口隔离原则·javaee
网易独家音乐人Mike Zhou4 小时前
【卡尔曼滤波】数据预测Prediction观测器的理论推导及应用 C语言、Python实现(Kalman Filter)
c语言·python·单片机·物联网·算法·嵌入式·iot
安静读书4 小时前
Python解析视频FPS(帧率)、分辨率信息
python·opencv·音视频
----云烟----5 小时前
QT中QString类的各种使用
开发语言·qt
lsx2024065 小时前
SQL SELECT 语句:基础与进阶应用
开发语言
小二·5 小时前
java基础面试题笔记(基础篇)
java·笔记·python
开心工作室_kaic6 小时前
ssm161基于web的资源共享平台的共享与开发+jsp(论文+源码)_kaic
java·开发语言·前端
向宇it6 小时前
【unity小技巧】unity 什么是反射?反射的作用?反射的使用场景?反射的缺点?常用的反射操作?反射常见示例
开发语言·游戏·unity·c#·游戏引擎