十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
params
创新互联成立于2013年,我们提供高端网站建设、成都网站制作、成都网站设计、网站定制、营销型网站、成都小程序开发、微信公众号开发、网站推广服务,提供专业营销思路、内容策划、视觉设计、程序开发来完成项目落地,为白乌鱼企业提供源源不断的流量和订单咨询。
就是(5, 5)
(5,) * 2 ,就是2个5的元组,乘号可以理解成相加。"*" * 30就是30个“*"的字符串
*params作为参数,前面的*号就是把params元组分解成元素的意思,这样就分开成为2个参数了。实际上传递给了x,y
于是就执行了power(5,5)
在 Python 中,可以使用 Pandas 库来导出回归预测数据。
首先,需要安装 Pandas 库,使用 pip 安装:
pip install pandas
然后,可以使用 Pandas 的 to_csv() 函数来导出数据,下面是一个简单的示例:
import pandas as pd
# 创建一个 DataFrame,存储回归预测数据
data = {'prediction': [1, 2, 3, 4, 5], 'actual': [1.2, 2.3, 3.1, 4.5, 5.2]}
df = pd.DataFrame(data)
# 导出数据到 CSV 文件
df.to_csv('regression_prediction.csv', index=False)
这样就能将预测数据导出到一个名为 "regression_prediction.csv" 的文件中。
如果想要导出到其他格式文件中,可以使用 to_excel(), to_json() 等函数来导出数据。
注意: 导出文件的格式取决于你的系统和环境中是否安装了相应的库。
dir()
不加任何参数,便可查看命名空间内所有的变量名、函数名以及导入的模块的名称
返回的是一个列表
首先来看一个函数间的调用
类方法:
执行结果:
metaclass能有什么用处,先来个感性的认识:
1.1 在wiki上面,metaclass是这样定义的:In object-oriented programming,
a metaclass is a class whose instances are classes.
Just as an ordinary class defines the behavior of certain objects,
a metaclass defines the behavior of certain classes and their instances.
也就是说metaclass的实例化结果是类,而class实例化的结果是instance。我是这么理解的:
metaclass是类似创建类的模板,所有的类都是通过他来create的(调用 new ),这使得你可以自由的控制
创建类的那个过程,实现你所需要的功能。
当然你也可以用函数的方式(下文会讲)
4.1 用类的形式
4.1.1 类继承于type, 例如: class Meta(type):pass
4.1.2 将需要使用metaclass来构建class的类的 metaclass 属性(不需要显示声明,直接有的了)赋值为Meta(继承于type的类)
4.2 用函数的形式
4.2.1 构建一个函数,例如叫metaclass_new, 需要3个参数:name, bases, attrs,
name: 类的名字
bases: 基类,通常是tuple类型
attrs: dict类型,就是类的属性或者函数
4.2.2 将需要使用metaclass来构建class的类的 metaclass 属性(不需要显示声明,直接有的了)赋值为函数metaclas_new
5.1 basic
metaclass的原理其实是这样的:当定义好类之后,创建类的时候其实是调用了type的 new 方法为这个类分配内存空间,创建
好了之后再调用type的 init 方法初始化(做一些赋值等)。所以metaclass的所有magic其实就在于这个 new 方法里面了。
说说这个方法: new (cls, name, bases, attrs)
cls: 将要创建的类,类似与self,但是self指向的是instance,而这里cls指向的是class
name: 类的名字,也就是我们通常用类名. name 获取的。
bases: 基类
attrs: 属性的dict。dict的内容可以是变量(类属性),也可以是函数(类方法)。
所以在创建类的过程,我们可以在这个函数里面修改name,bases,attrs的值来自由的达到我们的功能。这里常用的配合方法是
getattr和setattr(just an advice)
下面实现python中在一个类中调用另一个类的函数方法
或者下面来一个号理解的例子
执行结果:
先来介绍内部类与外部类是什么?
看源码解析:
内部类调用外部类的类属性和类方法
参考文献1
参考文献2
参考文献3
命名空间是从名称到对象的映射,大部分的命名空间都是通过Python字典来实现的。
命名空间提供了在项目中避免名字冲突的一种方法,各个命名空间是独立的,没有任何关系的,所以一个命名空间中不能有重名,但不同的命名空间是可以重名而没有任何影响。
Python命名空间分类
Python程序执行期间会有两个或者三个活动的命名空间,按照变量定义的位置,可以划分为以下3类:
内置名称:built-in names,Python语言内置的名称,比如函数abs、char和异常名称BaseException、Exception等。
全局名称:global names,模块中定义的名称,记录了模块的变量,包括函数、类、其它导入的模块、模块级的变量和常量。
局部名称:local names,函数中定义的名称,记录了函数的变量,包括函数的参数和局部定义的变量。
Python命名空间生命周期
local names,在函数被调用时才被创建,但函数返回结果或抛出异常时被删除。
global names,在模块被加载时创建,通常一直保留,直到Python解释器退出。
built-in names,在Python解释器启动时创建,一直保留到解释器退出。
各个命名空间创建顺序:Python解释器启动—创建内建命名空间-加载模块-创建全局命名空间-函数被调用-创建局部命名空间。
各个命名空间销毁顺序:函数调用结束-销毁函数对应的局部命名空间-Python解释器退出-销毁全局命名空间-销毁内建命名空间。