52道常见python面试题,你试一试? (2)

答案是否定的。那些具有对象循环引用或者全局命名空间引用的变量,在 Python 退出是往往不会被释放.
另外不会释放 C 库保留的部分内容。

Q.11. 什么是猴子补丁?

在运行时动态修改类和模块

52道常见python面试题,你试一试?

Hi, monkey

Q.12. 什么是 Python 字典?

字典是我在 C++和 Java 中没有见过的数据结构,它拥有键-值对

52道常见python面试题,你试一试?

3
字典是可变的,我们也可以用推导式的方式创建它.

52道常见python面试题,你试一试?

Q.13. 能否解释一下 *args 和 **kwargs?
如果我们不知道将多少个参数传递给函数,比如当我们想传递一个列表或一个元组值时,就可以使用*args。

52道常见python面试题,你试一试?

3
2
1
4
7
当我们不知道将会传入多少关键字参数时,使用**kwargs 会收集关键字参数。

52道常见python面试题,你试一试?

a.1
b.2
c.7
使用 args 和 kwargs 作为参数名只是举例,可以任意替换。
对于 Python 的基础题任何疑问,请在评论区提问。

Q.14. 编程实现计算文件中的大写字母数

52道常见python面试题,你试一试?

26

Q.15. 什么是负索引?

我们先创建如下列表:

52道常见python面试题,你试一试?

与正索引不同,负索引是从右边开始检索。

52道常见python面试题,你试一试?

6
同样可以用于列表的切片:

52道常见python面试题,你试一试?

[3, 4, 5, 6, 7]

Q.16. 如何随机打乱列表中元素,要求不引用额外的内存空间?

我们用 random 包中的 shuffle 函数来实现。

52道常见python面试题,你试一试?

[3, 4, 8, 0, 5, 7, 6, 2, 1]

Q.17. 解释 Python 中的 join 和 split 函数

join 函数可以将指定的字符添加到字符串中。

52道常见python面试题,你试一试?

‘1,2,3,4,5’

split 函数可以用指定的字符分割字符串

52道常见python面试题,你试一试?

[‘1’, ‘2’, ‘3’, ‘4’, ‘5’]

Q.18. Python 区分大小写吗?

验证 Python 是否区分大小写的方法是测试 myname 和 Myname 在程序中是不是算同一个标识符。观察以下代码的返回结果:

52道常见python面试题,你试一试?

Myname

NameError: name ‘Myname’ is not defined

如你所见,这里出现了 NameError,所以 Python 是区分大小的语言。

Q.19. Python 中标识符的命名规则?

Python 中的标识符可以是任意长度,但必须遵循以下命名规则:

只能以下划线或者 A-Z/a-z 中的字母开头。

其余部分只能使用 A-Z/a-z/0-9。

Python 标识符区分大小写。

关键字不能作为标识符。Python 有以下这些关键字:

52道常见python面试题,你试一试?

Q.20. 如何删除字符串中的前置空格

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wpzsww.html