📘 一、基础概念
- 元组是什么
不可修改的有序序列
- 什么是函数
函数是组织好的、可重复使用的代码,用来实现特定的功能,使用 def
关键字定义。
- 什么是参数
函数定义或调用时,用来传递信息的变量。
- 什么是形参,什么是实参
形参:函数定义时的参数;
实参:函数调用时传入的值。
- 函数如何返回值
使用 return
语句返回一个或多个值
📗 二、九九乘法表函数及 input
应用
- 将99乘法表制作为函数,要求有2个参数,两个参数分别控制乘法表的最大乘数和最大被乘数
def multiplication_table(max_i, max_j):
for i in range(1,max_i+1):
for j in range(1,min(i,max_j)+1):
print(f"{i}*{j}={i*j}")
print("")
- input是如何使用的?试着使用input输出参数传递给99乘法表的函数
i = int(input("请输入最大乘数:"))
j = int(input("请输入最大被乘数:"))
multiplication_table(i, j)
📙 三、print控制与列表操作
- 默认print会自动换行,如何让print不自动换行
添加end=""
参数
print("Hello", end="")
- 打印列表时,如何倒序打印,就是先输出字典最后一位,最后输出字典的第一位
使用reversed
函数
lst = ['a', 'b', 'c']
for item in reversed(lst):
print(item)
- 如何列表进行去重
由于集合(set)是不可重复的无序序列,可以先将列表转为集合在将其转换成列表
lst = [1, 2, 2, 3]
lst_unique = list(set(lst))
📒 四、变量技巧与拷贝知识
- 单个下划线是否可以作为变量名称,什么情况下会使用这种方式
可以,通常用于“临时变量”或“占位变量”,表示“这个值我不关心”。
- 比如列表为['小明',18,'BeiJing'],如何快速为每个元素单独设置变量名
data = ['小明', 18, 'BeiJing']
name, age, city = data
- 什么是深拷贝,什么是浅拷贝,什么情况下使用
深拷贝: 将一个对象从内存中完整拷贝一份到内存中的其他位置存放到新的对象中,修改新对象不会影响原对象。
浅拷贝: 创建一个新对象并拷贝原始属性值,如果属性是基本类型,拷贝的就是基本类型的值,如果属性是引用类型,拷贝的就是内存地址,当其中一个对象发生改变时也会影响到另一个对象。
📕 五、数据结构对比与操作总结
- 列表是有序的?
有序的
- 字典是有序的还是无序的
从Python 3.7 开始是插入有序的
- 集合是什么
集合是无序的、不重复元素的容器
- 列表、字典、集合、元组的区别是什么,做表格进行对比。在什么场景下使用
特性 | 列表(list) | 字典(dict) | 集合(set) | 元组(tuple) |
---|---|---|---|---|
是否有序 | ✅ | ✅ | ❎ | ✅ |
可修改性 | ✅ | ✅ | ✅ | ❎ |
是否允许重复 | ✅ | 键不可重复 | ❎ | ✅ |
是否可哈希 | ❎ | ❎ | ✅ 元素必须可哈希 | ✅ |
使用场景 | 通用存储、遍历 | 映射关系 | 去重、集合运算 | 不可变数据、函数参数 |
- 列表、字典、集合、元组的增删改查,怎么操作
操作 | 列表(list) | 字典(dict) | 集合(set) | 元组(tuple) |
---|---|---|---|---|
增 | append() / insert() | dict["key"] = value | add() | ❎不可更改 |
删 | remove() / pop() | del dict["key"] / pop() | remove() / discard() | ❎不可更改 |
改 | lst[i] = val | dict["key"] = new_val | ❎ 只能先删再加 | ❎不可更改 |
查 | lst[i] / 遍历 | dict["key"] / .get() | in 运算符 | lst[i] / 遍历 |