首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

【Python面试】 说说Python变量、函数、类的命名规则?

废话不多说,开始今天的题目: 问:Python变量、函数、类的命名规则?...答:Python命名规范在编写代码中起到很重要的作用,虽然不遵循命名规范,程序可能也可以运行,但是使用命名规范可以更加直观地了解代码所代表的含义。...Python的命名规范(其它编程语言也差不多) (1)不能以数字开头,不能出现中文。 (2)命名以字母开头,包含数字,字母(区分大小写),下划线。 (3)不能包含关键字,见名知意。...下面具体说说Python的命名规范: 1、类 单词首字母总是大写,私有类可以下划线开头。如MyClass。...项目中也可以使用这种命名,它的意义在于这种形式的变量是只读的,这种形式的类成员函数尽量不要重载。

93540
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    【Python面试】 说说Python变量、函数、类的命名规则?

    废话不多说,开始今天的题目: 问:Python变量、函数、类的命名规则?...答:Python命名规范在编写代码中起到很重要的作用,虽然不遵循命名规范,程序可能也可以运行,但是使用命名规范可以更加直观地了解代码所代表的含义。...Python的命名规范(其它编程语言也差不多) (1)不能以数字开头,不能出现中文。 (2)命名以字母开头,包含数字,字母(区分大小写),下划线。 (3)不能包含关键字,见名知意。...下面具体说说Python的命名规范: 1、类 单词首字母总是大写,私有类可以下划线开头。如MyClass。...项目中也可以使用这种命名,它的意义在于这种形式的变量是只读的,这种形式的类成员函数尽量不要重载。

    16.2K22

    一文讲全了 Python 类和对象内容

    继续使用 Python 类,有一些变量在类的所有实例之间共享。这些被称为类变量。实例变量对于每个实例都可以是唯一的,例如姓名、电子邮件、sal 等。复杂吗?让我们通过一个例子来理解这一点。...面向对象的概念 OOPs 指的是 Python 中的面向对象编程。好吧,Python 并不是完全面向对象的,因为它包含一些过程函数。现在,您一定想知道过程编程和面向对象编程之间有什么区别。...为了消除您的疑问,在过程式编程中,整个代码都被写入一个长过程,即使它可能包含函数和子例程。由于数据和逻辑混合在一起,因此无法管理。但是当我们谈论面向对象编程时,程序被拆分为独立的对象或几个小程序。...同样,在 python 中,有两个类: 父类(Super 或 Base 类) 2.子类(子类或派生类) 继承属性的类称为子类,而继承属性的类称为父类。 继承是指创建包含其父类的专业化的子类的能力。...现在,如果我想再添加一个属性,比如在我们的 init 方法中使用一种编程语言,但它在我们的父类中不存在。有什么解决办法吗?是的!我们可以复制整个员工逻辑并这样做,但它会再次增加代码大小。

    38320

    python快速入门【五】---- 面向对象编程、python类

    换句话说,类就像一个表格或问卷。它定义了所需的信息。填写表格后,您的特定副本就是该类的一个实例;它包含与您相关的实际信息。...在Python 2.x(“遗留Python”)上,您将使用稍微不同的类定义: #Python 2.x类定义: class Dog(object): Pass 括号中的(对象)部分指定了您继承的父类...因此,要创建类的实例,请使用类名,后跟括号。然后为了证明每个实例实际上是不同的,我们实例化了两个狗,将每个狗分配给一个变量,然后测试这些变量是否相等。 您认为类实例的类型是什么?...换句话说,子类继承了父项的所有属性和行为,但也可以添加不同行为。最基本的类是一个对象,通常所有其他类都继承为它们的父对象。 定义新类时,Python 3隐式使用object作为父类。...父类与子类 isinstance()函数用于确定实例是否也是某个父类的实例。

    61911

    Python 中的元类到底是什么?这篇恐怕是最清楚的了

    类作为对象 在理解元类之前,您需要掌握 Python 的类。Python 从 Smalltalk 语言中借用了一个非常特殊的类概念。 在大多数语言中,类只是描述如何产生对象的代码段。...但是,它仍然是一个对象,因为: 您可以将其分配给变量 你可以复制它 您可以为其添加属性 您可以将其作为函数参数传递 例如: >>> print(ObjectCreator) # 你可以打印一个类,因为它是一个对象...> 您会注意到,我们使用 “MyShinyClass” 作为类的名称和变量来保存类引用。...这是 Python 在使用关键字class时所做的,并且是通过使用元类来完成的。 什么是元类(最终) 元类是创建类的 “东西”。 您定义类是为了创建对象,对吗?...type只是创建类对象的类。 您可以通过检查__class__属性来看到。 一切,我的意思是一切,都是 Python 中的对象。其中包括整数,字符串,函数和类。它们都是对象。

    71420

    如何对第一个Vue.js组件进行单元测试 (下)

    首先,我们使用Jest的expect函数,它将我们想要测试的值作为参数。在我们的例子中,在父级上用findAll方法来获取具有活动类的所有元素。...这将返回一个WrapperArray,包含Wrappers数组的对象。        一个WrapperArray有两个属性:父级(包含的Wrappers)和长度(Wrappers的数量)。...该方法返回一个布尔值(boolean),这是测试通过或失败的原因。        总而言之,在这里,我们期望在父级中找到的具有活动类的元素的总量应等于3(我们分配给等级道具的值)。        ...如果更改标签名称或类怎么办?        如果您在要测试的元素上没有特定的标识符,例如计数器,该怎么办? 您不想使用无用的类污染您的生产代码。...让我们看看第一次测试的断言:        我们应该对具有活动类的元素使用v-test,并在断言中替换选择器吗?好问题。        单元测试都是关于一次测试一件事。

    3.3K00

    前50个Python面试问题(最受欢迎)

    热门Python面试问答 下面列出的是关于Python编程语言的最常见面试问题和答案。 让我们探索!! #1)Python可以用于Web客户端和Web服务器端编程吗?哪一个最适合Python?...#14)Python中_init_()函数的作用是什么? 答:这是在实例化类的对象时执行的第一个函数。这等效于C ++中的构造函数概念。 #15)对象方法中“ self”参数的意义是什么?...#16)Lambda函数与Python中的普通函数有何不同? 答: Lambda与C编程中的内联函数相似。它返回一个函数对象。它仅包含一个表达式,并且可以接受任意数量的参数。...PYTHONSTARTUP:此环境变量包含包含源代码的初始化文件的路径。 PYTHONCASEOK:此变量用于在导入语句中查找第一个不区分大小写的匹配项 #27)什么是Python元组?...答: Python中有两种类型的成员运算符: in:如果在序列中找到该值,则结果为true,否则为false 不在:如果未在序列中找到该值,则结果为true,否则为false 例: a=15 b=30

    5.1K30

    Java面试-面向对象

    多态性是能够在不同上下文中为某事物赋予不同含义或用法的一种特征-具体来说,就是允许诸如变量,函数或对象之类的实体具有多种形式。...Java中的接口是类的蓝图,或者可以说它是抽象方法和静态常量的集合。在接口中,每个方法都是公共的和抽象的,但不包含任何构造函数。因此,接口基本上是一组带有空主体的相关方法。...因此所有现有代码都可能正常工作 如果我们向接口添加新方法,则必须跟踪该接口的所有实现并为新方法定义实现 抽象类可以包含构造函数 接口不能包含构造函数 抽象类很快 接口很慢,因为它需要额外的间接才能在实际的类中找到对应的方法...Java支持吗? 如果子类从多个类继承属性,则称为多重继承。Java不允许扩展多个类。 多重继承的问题在于,如果多个父类具有相同的方法名称,则在运行时,编译器将很难从子类中决定执行哪个方法。...您必须注意的一件事是Object clone()是一种受保护的方法,因此您需要重写它。 Q17。Java中的构造函数是什么? 复制构造函数是一个成员函数,用于使用同一类的另一个对象初始化一个对象。

    71520

    每天一道 python 面试题 - Python中的元类(metaclass) 详细版本

    类作为对象 在理解元类之前,您需要掌握Python的类。Python从Smalltalk语言中借用了一个非常特殊的类概念。 在大多数语言中,类只是描述如何产生对象的代码段。...由于类是对象,因此它们必须由某种东西生成。 使用class关键字时,Python会自动创建此对象。但是,与Python中的大多数事情一样,它为您提供了一种手动进行操作的方法。 还记得功能type吗?...由于Python中的向后兼容性,这是一个问题) type 这样工作: type(name, bases, attrs) name:班级名称 bases:父类的元组(对于继承,可以为空) attrs:包含属性名称和值的字典...这就是Python在使用关键字class时所做的事情,并且通过使用元类来做到这一点。 什么是元类(最终) 元类是创建类的“东西”。 您定义类是为了创建对象,对吗?...实际上,关于元类的更多信息。 使用元类编写代码的复杂性背后的原因不是因为元类,而是因为您通常使用元类依靠自省,操纵继承和诸如var之类的变量来做扭曲的事情__dict__。

    43110

    每天一道 python 面试题 - Python中的元类(metaclass) 详细版本

    类作为对象 在理解元类之前,您需要掌握Python的类。Python从Smalltalk语言中借用了一个非常特殊的类概念。 在大多数语言中,类只是描述如何产生对象的代码段。...由于类是对象,因此它们必须由某种东西生成。 使用class关键字时,Python会自动创建此对象。但是,与Python中的大多数事情一样,它为您提供了一种手动进行操作的方法。 还记得功能type吗?...这就是Python在使用关键字class时所做的事情,并且通过使用元类来做到这一点。 什么是元类(最终) 元类是创建类的“东西”。 您定义类是为了创建对象,对吗?...实际上,关于元类的更多信息。 使用元类编写代码的复杂性背后的原因不是因为元类,而是因为您通常使用元类依靠自省,操纵继承和诸如var之类的变量来做扭曲的事情dict。...如果您指定了元类类,但没有元类函数,则该类的子类将是其元类的实例。 您可以更好地构建代码。绝对不要像上面的示例那样将元类用于琐碎的事情。通常用于复杂的事情。

    61100

    检查Python对象

    对于面向对象的类和类实例也是如此。例如,可以看到每个 Python 字符串都被赋予了一些属性, dir() 函数揭示了这些属性。...Python 具有一组丰富的对象类型:字符串、整数、浮点、列表、元组、字典、函数、类、类实例、模块、文件等。...当您有一个任意的对象(也许是一个作为参数传递给函数的对象)时,可能希望知道一些关于该对象的情况。在本节中,我们将向您展示如何让 Python 对象回答如下问题: 对象的名称是什么?...我是您的类型吗? >>> import types >>> print types....在类这一级别,可以根据一个类来定义另一个类,同样地,这个新类会按照层次化的方式继承属性。Python 甚至支持多重继承,多重继承意味着可以用多个父类来定义一个类,这个新类继承了多个父类。

    1.3K100

    Python小技巧:​args 和 kwargs 的乐趣

    要不然我们相处的很好,我猜想这就是学术界编程最终对人所带来的影响吧。 现在args和 kwargs参数仍然是 Python 中非常有用的特性,而且理解它们的威力将使您成为更有效的开发人员。...当我们调用带有参数的不同组合的函数时,你会看到在args和kwargs内部参数。 Python如何收集它们,根据它们是否为位置参数或者关键字参数。....:     bar(x, *new_args, **kwargs) 这种技术对于子类化和编写包装函数很有用。 例如,您可以使用它来扩展父类的行为,而不必在子类中复制其构造函数的完整签名。...这意味着如果父类构造函数发生更改,AlwaysBlueCar 很有可能仍会按预期运行。...这里的缺点是 AlwaysBlueCar 构造函数现在有一个相当无用的签名——如果不查找父类,我们不知道它需要什么参数。 通常,您不会将这种技术用于您自己的类层次结构。

    54810

    Python内置(2)异常、常量、globals

    关于异常的更多内容,如异常的子类化,Exception几乎是任何异常的父类、BaseException是所有异常的父类。这里不在赘述。...此外,__debug__, True, False 和None是 Python 中唯一的真常量,即这 4 个是 Python 中唯一不能用新值覆盖的全局变量。...__build_class__ 此全局变量是在 Python 3.1 中添加的,以允许类定义接受任意位置和关键字参数。...__cached__ 导入__cached__模块时,该属性存储该模块的已编译 Python 字节码的缓存文件的路径。你可能会惊讶,Python也要编译吗?是的。Python被编译。...它本质上是在您的机器上模拟一个非常简单的基于堆栈的计算机,以便执行您编写的Python代码。 3. 然后,在 Python VM 上运行此代码形式的代码。

    93920

    Python之面向对象

    Python之面向对象 1 Python之权限控制 权限控制 在Python中,实例的变量名如果以双下划线”__”开头,它就变成了一个私有变量,类似于C++当中的private属性,只有内部可以访问...,让这两个函数去返回我们想要的两个变量。...双下划线开头的实例变量是不是一定不能从外部访问呢?其实也不是。...我们首先写个Animal的类,它里面包含了一个run的方法,再从Animal中继承出来Cat和Dog类,语法是在类定义的括号中将object替换成Animal。...run方法; 3.当子类中有eat方法而父类中没有eat方法时,子类将调用自己的eat方法; 这就是Python当中的继承和多态,当我们新增一种Animal的子类时,子类可以直接调用父类的方法,当子类定义了和父类同名的方法时

    36020

    从 Java 到 Kotlin,再从 Kotlin 回归 Java

    意味着具有未定义空值的T类型。这种奇怪的类型不能用Kotlin来表示,它只能从Java类型推断出来。T!会误导你,因为它放松了对空的限制,并禁用了Kotlin的空值安全限制。...似乎Java互操作性破坏了Kotlin的杀手特性——类型推断。看起来您应该显式地声明类型(如T?),以满足由Java方法填充的所有Kotlin变量。 ? 类字面量 ?...即时在 Intellij 这么优秀的 IDE 中为 Kotlin 输入这样的变量名也十分不易。如果代码中存在很多 Repository,就很难在自动完成列表中找到匹配的那一个。...换句话说,你得手工输入完整的变量名。 ? ? 伴生对象 ? 一个 Java 程序员来到 Kotlin 阵营。 “嗨,Kotlin。我是新来的,有静态成员可用吗?”他问。 “没有。...“它是与类绑定的一个单例对象。你可以把日志记录器放在伴生对象中,” Kotlin 如此解释。 “明白了。是这样吗?” ? “对!

    1.8K40

    Java并发关键字-final

    文章目录 final的简介 final的具体使用场景 变量 final成员变量 final局部变量 方法 类 final关键字举例 多线程中你真的了解final吗 final域重排序规则 final域为基本类型...final域为引用类型 final的实现原理 为什么final引用不能从构造函数中“溢出” final的简介 final可以修饰变量,方法和类,用于表示所修饰的内容一旦赋值之后就不会再被改变,比如String...子类继承往往可以重写父类的方法和改变父类属性,会带来一定的安全隐患,因此,当一个类不希望被继承时就可以使用final修饰。...写final域重排序规则 写final域的重排序规则禁止对final域的写重排序到构造函数之外,这个规则的实现主要包含了两个方面: JMM禁止编译器把final域的写重排序到构造函数之外; 编译器会在...具体是否插入还是得看是什么处理器 为什么final引用不能从构造函数中“溢出” 这里还有一个比较有意思的问题:上面对final域写重排序规则可以确保我们在使用一个对象引用的时候该对象的final域已经在构造函数被初始化过了

    70730

    教你如何使用 flask 框架在浏览器打印 hello world

    Python将所有三方包托管到一个公共仓库,任何人都能从这个公共仓库下载并安装所有的三方包。...如果您使用的是Python 2,请参阅先安装virtualenv。...激活一个虚拟环境,终端会话的环境配置就会被修改,之后你键入python的时候,实际上是调用的虚拟环境中的Python解释器。此外,终端提示符也被修改成包含被激活的虚拟环境的名称的格式。...上面的脚本仅仅是从flask中导入的类Flask,并以此类创建了一个应用程序对象。传递给Flask类的__name__变量是一个Python预定义的变量,它表示当前调用它的模块的名字。...app变量被定义为__init__.py脚本中的Flask类的一个实例,以至于它成为app包的属性。 其二,routes模块是在底部导入的,而不是在脚本的顶部。

    1.4K30
    领券