Python中的一些容易忽略的知识点

设置源文件编码

在默认情况下,Python3源码文件是以UTF-8编码进行保存的,所有的字符串都是unicode编码格式。
一般情况下,我们在源码文件第一行使用如下语法进行编码声明:

# -*- coding:utf-8 -*-

如何查看Python关键字

在Python3中预留了一些关键字,用于语法标识,这些关键字不可以用于任何变量名称或函数或类等等的定义标识,那如何来查看这些内置的关键字定义呢?

import keyword

print("查看python中内置的关键字:")
print(keyword.kwlist)

if __name__ == '__main__': 如何正确理解?

假设现在有个模块Question.py
现在另外一个程序keywords.py想要调用Question.py
这时在keywords.py看来__name__ == '__Question__' ,但在Question.py看来__name__ == '__main__'
所以直接执行Question.py,if __name__ == '__main__':下面的内容将会运行,如果keywords.py调用Question.py,

if __name__ == '__main__':下面的内容不会执行,所以这个下面主要放些私有的东西,不希望别人导入时运行。

其实:当某个模块被其他模块通过import等语句导入时,Python解释器会首先检查模块注册表sys.modules中是否有该模块,
如果有,则直接利用存在的模块对象的名字空间中的变量;如果没有,创建一个空的模块对象,将其添加到sys.modules中,

在以该模块名为名字空间下执行该模块,除了if __name__ == '__main__': 条件中的代码,而被执行代码中定义的变量在该名字空间下都是可访问的。

python类class中__init__函数以及参数self的简单解释

1)class类包含:
类的属性:类中所涉及的变量 

类的方法:类中函数

2)__init__函数(方法)
1.首先说一下,带有两个下划线开头的函数是声明该属性为私有,不能在类地外部被使用或直接访问。 
2.init函数(方法)支持带参数的类的初始化 ,也可为声明该类的属性 
3.init函数(方法)的第一个参数必须是 self(self为习惯用法,也可以用别的名字),后续参数则可以自由指定,和定义函数没有任何区别。
4.__init__()方法是所谓的对象的“构造函数”,负责在对象初始化时进行一系列的构建操作

3)函数定义 
Python编程中对于某些需要重复调用的程序,可以使用函数进行定义,基本形式为: 
def 函数名(参数1, 参数2, ……, 参数N): 
注意在类的内部,使用def关键字可以为类定义一个函数(方法),与一般函数定义不同,类方法必须包含参数self,且为第一个参数! 
Python中的self等价于C++中的self指针和Java、C#中的this参数。

猜你喜欢

转载自blog.csdn.net/sinat_37967865/article/details/79944841