61、是否使用过functools中的函数?其作用是什么?
62、列举面向对象中带爽下划线的特殊方法,如:__new__、__init__
63、如何判断是函数还是方法?
函数是封装了一些独立的功能,可以直接调用,python内置了许多函数,同时可以自建函数来使用
方法和函数类似,同样封装了独立的功能,但是方法是需要通过对象来调用的,表示针对这个对象要做的操作,使用时采用点方法。
64、静态方法和类方法区别?
实例方法,类方法,静态方法都可以通过实例或者类调用,只不过实例方法通过类调用时需要传递实例的引用
三种方法从不同层次上来对方法进行了描述:实例方法针对的是实例,类方法针对的是类,他们都可以继承和重新定义,而静态方法则不能继承,可以认为是全局函数。
65、列举面向对象中的特殊成员以及应用场景
魔术方法 用于在某一时刻调用时
66、1、2、3、4、5 能组成多少个互不相同且无重复的三位数
67、什么是反射?以及应用场景?
68、metaclass作用?以及应用场景?
69、用尽量多的方法实现单例模式。
70、装饰器的写法以及应用场景。
71、异常处理写法以及如何主动跑出异常(应用场景)
print("123")
expect:
print("456")
通过raise 异常对象主动抛出异常
72、什么是面向对象的mro
Method Realtion Order 用来制作一个继承关系的列表
MRO列表的制作原则:
1、子类永远在父类的前面
2、如果继承了多个父类,那么按照()中的顺序在列表中摆放
3、如果多个类同时继承了一个父类,孙子类中只会选取第一个父类中的父类的该方法
73、isinstance作用以及应用场景?
检测一个数据是否由指定的类型创建
74、写代码并实现:
Given an array of integers, return indices of the two numbers such that they add up to a specific target.You may assume that each input would have exactly one solution, and you may not use the same element twice. Example: Given nums = [2, 7, 11, 15], target = 9, Because nums[0] + nums[1] = 2 + 7 = 9, return [0, 1]
75、json序列化时,可以处理的数据类型有哪些?如何定制支持datetime类型?
76、json序列化时,默认遇到中文会转换成unicode,如果想要保留中文怎么办?
json.dump(jsonDate,ensure_ascii=False)
77、什么是断言?应用场景?
在没有一个程序之前,我们不知道程序会在哪里出错,与其让它在运行中崩溃,不如在出现错误条件时就崩溃,这时候就需要assert断言的帮助
python assert断言是声明其布尔值必须为真的判定,如果发生异常就说明表达示为假
可以理解assert断言语句为raise-if-not,用来测试表示式,其返回值为假,就会触发异常。
78、有用过with statement吗?它的好处是什么?
with语句的作用是通过某种方式简化异常处理
自动管理文件关闭
79、使用代码实现查看列举目录下的所有文件。
80、简述 yield和yield from关键字。
yield 的作用就是把一个函数变成一个生成器,带有yield的函数不再是一个普通的函数
yield from generator 。实际上就是返回另外一个生成器
yield from 后面可以跟的式子有“ 生成器 元组 列表等可迭代对象以及range()函数产生的序列