• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

面试python常见问题八股文

武飞扬头像
不会飞的小企鹅
帮助1

1.Python中的不可变数据类型和可变数据类型是什么意思?

可变数据类型:改变值但是内存地址不发生改变,list(列表)、dict(字典)、set(集合,不常用)

不可变数据类型:改变值会导致内存地址发生了改变,数值类型(int、float、bool)、string(字符串)、tuple(元组)题

2.请简述Python中is和==的区别。

Python中的对象包含三个要素:id、type和value。

is比较的是两个对象的id。==比较的是两个对象的value。

3.请简述function(args, **kwargs)中的 args, kwargs分别是什么意思?

万能参数,解决了函数参数不固定的问题

*args:会把位置参数转化为tuple

**kwarg:会把关键字参数转化为dict

4.请简述面向对象中__new__和__init__的区别

  __new__至少要有一个参数cls,代表当前类,此参数在实例化时由Python解释器自动识别。

  __ new__是一个静态方法(创建),而__init__是一个实例方法(初始化)

  __new__方法会返回一个创建的实例,而__init__什么都不返回

  只有在__new__返回一个类的本身的实例时,后面的__init__才能被调用

当创建一个新实例时调用__new__,初始化一个实例时用__init数

5.Python子类继承自多个父类时,如多个父类有同名方法,子类将继承自哪个方法?

按照顺序先继承A中的方法

Python语言中子类继承父类的方法是按照继承的父类的先后顺序确定的,例如,子类A继承自父类B、C,且B、C中具有同名方法Test(),那么A中的Test()方法实际上是继承自B中的Test()方法。

<

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhggaabj
系列文章
更多 icon
同类精品
更多 icon
继续加载