Python 再学习1

Python 再学习1

基础语法打通小异,所以不赘述了

基本环境:

IDE环境:

PyCharm


python库管理:

Anaconda


参考:https://www.jianshu.com/p/169403f7e40c

他能管理你的安装环境和各种工具包,包含了conda、Python等190多个科学包及其依赖项。

使用:可以直接在图形界面搜索包,也可以命令行安装

conda install package_name

常用命令和操作:

运行命令:

python 文件名.py

进入python运行环境

python

切换python版本

我用的是Pycharm

 

面向对象

元类:

元类是用来创造类的类,我们常用的是type这个元类。(这个类很多时候用不到)

类也是对象

在python中,类不仅是用来描述如何生成一个对象的代码,他甚至会在解释器执行的时候创建一个名字为类名的对象。

对于这个对象我们可以做如下操作:

1、      将他赋值给一个变量

2、      拷贝他

3、      增加他的属性

4、      将他作为函数参数传递


动态地创建类

作为动态语言的python提供了可以动态创建对象的方法:

这里我们用到python的內建函数type。

type(类名 ,

由父类名称组成的元组(针对击沉情况,可以为空),

包含属性的字典(名称和值))


若添加方法则为:

_metaclass_属性

在解释器创建类时,如果有这个属性,就会优先通过这个属性的方法创建这个类,否则就走內建的type。

动态语言

动态添加属性

作为动态语言的python,可以在运行时改变其结构。

动态添加方法



动态删除属性和方法:

使用:

del  对象.属性名

delattr(对象,”属性名”)

限定属性 _slots_:

限制属性修改,只能有给定的属性,不能添加

 

生成器

在有规律的大数据存储的时候,为了避免因为数据量过大造成的内存空间占用,python可以通过生成器去一边循环一边计算。

特点:生成器所使用的参数都是使用第一次所调用时保留的。所以比较节约内存

简单生成器

只要把一个列表生成式的[] 变为 ()就好了

调用通过next调用:

复杂生成器

对于复杂生成器,一般都是用到的是for循环,为了保证一次一次传值,我们通过yield来控制。

yield 是一个类似 return 的关键字,迭代一次遇到yield时就返回yield后面(右边)的值。下一次迭代时,从上一次迭代遇到的yield后面的代码(下一行)开始执行

 


猜你喜欢

转载自blog.csdn.net/u011486491/article/details/79085509