【Python面试】 说说Python变量、函数、类的命名规则?
最近公众号新增加了一个栏目,就是每天给大家解答一道Python常见的面试题,反正每天不贪多,一天一题,正好合适,只希望这个面试栏目,给那些正在准备面试的同学,提供一点点帮助!
小猿会从最基础的面试题开始,每天一题。如果参考答案不够好,或者有错误的话,麻烦大家可以在留言区给出自己的意见和讨论,大家是要一起学习的 。
废话不多说,开始今天的题目:
问:Python变量、函数、类的命名规则?
答:Python命名规范在编写代码中起到很重要的作用,虽然不遵循命名规范,程序可能也可以运行,但是使用命名规范可以更加直观地了解代码所代表的含义。
Python的命名规范(其它编程语言也差不多)
(1)不能以数字开头,不能出现中文。
(2)命名以字母开头,包含数字,字母(区分大小写),下划线。
(3)不能包含关键字,见名知意。
下面具体说说Python的命名规范:
1、类
单词首字母总是大写,私有类可以下划线开头。如MyClass。
class MyClass():
pass
class MySchool():
pass
2、函数
函数名一律小写,若有多个单词用下划线隔开。另外,私有函数下划线开头 。
def my_func(var1, var2):
pass
def _private_func(var1, var2):
pass
3、变量
变量名最好小写,若有多个使用下划线分开 。
常量使用全大写,多个单词使用下划线隔开 。
num = 20
this_is_a_variable = 1
MAX_NUM = 1000
额外补充:
缩写:
命名应当尽量使用全拼写的单词,缩写的情况有如下两种:
1.常用的缩写,如XML、ID等,在命名时也应只大写首字母,如XmlParser。
2.命名中含有长单词,对某个单词进行缩写。这时应使用约定成俗的缩写方式。
例如:
function 缩写为 fn
text 缩写为 txt
object 缩写为 obj
count 缩写为 cnt
number 缩写为 num,等。
前导后缀下划线
一个前导下划线:表示非公有。
一个后缀下划线:避免关键字冲突。
两个前导下划线:当命名一个类属性引起名称冲突时使用。
两个前导和后缀下划线:“魔”(有特殊用图)对象或者属性,例如__init__或者__file__。绝对不要创造这样的名字,而只是使用它们。
注意:关于下划线的使用存在一些争议。
特定命名方式
主要是指 __xxx__ 形式的系统保留字命名法。项目中也可以使用这种命名,它的意义在于这种形式的变量是只读的,这种形式的类成员函数尽量不要重载。如
class Base(object):
def __init__(self, id, parent = None):
self.__id__ = id
self.__parent__ = parent
def __message__(self, msgid):
其中 __id__、__parent__ 和 __message__ 都采用了系统保留字命名法。
如果对于参考答案有补充的,大家可以在评论区指出和补充,欢迎留言!
更多题目:
关注小猿公众号,每天学习一道题
上一篇: js封装tab标签页实例分享
下一篇: 哥,这大白天的你不要吓我啊!