在Python中, list, tuple, dict, set有什么区别, 主要应用在什么样的场景?
解答:
定义:
list: 链表, 有序的项目, 通过索引进行查找, 使用方括号"[]";
tuple: 元组, 元组将多样的对象集合到一起, 不能修改, 通过索引进行查找, 使用括号"()";
dict: 字典, 字典是一组键(key)和值(value)的组合, 通过键(key)进行查找, 没有顺序, 使用大括号"{}";
set: 集合,无序, 元素只出现一次, 自动去重, 使用"set([])";
应用场景:
list, 简单的数据集合, 可以使用索引;
tuple, 把一些数据当做一个整体去使用, 不能修改;
dict, 使用键值和值进行关联的数据;
set, 数据只出现一次, 只关心数据是否出现, 不关心其位置;
代码:
2. 静态函数, 类函数, 成员函数的区别?
解答:
定义:
静态函数(@staticmethod): 即静态方法,主要处理与这个类的逻辑关联;
类函数(@classmethod): 即类方法, 更关注于从类中调用方法, 而不是在实例中调用方法, 可以用作方法重载, 传入参数cls;
成员函数: 实例的方法, 只能通过实例进行调用;
具体应用:
日期的方法, 可以通过实例化(__init__)进行数据输出, 传入参数self;
可以通过类的方法(@classmethod)进行数据转换, 传入参数cls;
可以通过静态方法(@staticmethod)进行数据验证;
代码:
3. a=1, b=2, 不用中间变量交换a和b的值