面向对象基础知识
文章平均质量分 54
心之所向521
锲而舍之,朽木不折;锲而不舍,金石可镂!
敬畏代码!
展开
-
python创建类及继承、重构、多态的举例
目录1.创建类2.继承3.重构4.Python中子类与父类的关系5.python 中多态1.创建类如下定义一个动物类Animal为基类,它基本两个实例属性name和age、一个方法call。class people: #定义基本属性 name = '' age = 0 #定义私有属性,私有属性在类外部无法直接进行访问 __weight = 0 #定义构造方法 def __init__(self,n,a,w):...原创 2022-03-31 18:18:44 · 1465 阅读 · 0 评论 -
jupyter notebook环境配置
1.安装jupter终端输入: jupyter notebook如果未成功激活jupter则要自己先安装jupter:pip install jupyter ##安装jupterjupyter notebook ##启动jupter2.创建自己的conda环境conda create -n *** python=3.63.激活环境conda activate ***4.安装ipykernel包pip install ipykernel5.建...原创 2021-12-02 10:58:17 · 10230 阅读 · 2 评论 -
python中 inplace 参数的理解
pandas 中 inplace 参数在很多函数中都会有,它的作用是:是否在原对象基础上进行修改 inplace = True:不创建新的对象,直接对原始对象进行修改; inplace = False:对数据进行修改,创建并返回新的对象承载其修改结果。其默认的数值是False,即创建新的对象进行修改,原对象不变,和深复制和浅复制有些类似。实例1--inplace=True情况:import pandas as pdimport numpy as npdf=pd.DataFra..原创 2021-11-30 21:22:10 · 11619 阅读 · 2 评论 -
Python函数中参数前带*和**是什么意思?
背景前几天看了些python的代码,发现有些函数的参数前带有()号,有的甚至有两个()号,它们代表什么意思的?解释查阅资料后发现,参数前面加上* 号 ,意味着参数的个数不止一个,另外带一个星号*参数的函数传入的参数存储为一个元组(tuple),带两个**星号参数则是表示字典(dict) 下面我们实际操作一下:def t1(param1, *param2): print(param1) print(param2)t1(1,2,3,4)# 1# (2...原创 2021-11-30 20:24:22 · 8820 阅读 · 0 评论 -
linux系统下脚本的创建和执行
linux系统下脚本的创建和执行新建Shell脚本进入一个你想要放脚本文件的目录。执行:# 直接新建脚本文件并进入编辑vim ShellTest.sh # 或者# 先新建脚本文件,再进入编辑页面touch ShellTest.sh ##创建脚本文件vim ShellTest.sh ##编辑脚本文件在脚本文件页面放入必备语句:#!/bin/bash -----必备的语句,让系统知道这是一个脚本文件echo "Hello World !" #!.原创 2021-11-16 22:03:25 · 4218 阅读 · 0 评论 -
相对路径和绝对路径区别
绝对路径:```python'E:\\桌面\\PCA-master\\testSet.txt'```相对路径:```python'/Users/hakuri/Desktop/testSet.txt'```# from . import,“.” 代表使用相对路径导入,即从当前项目中寻找需要导入的包或函数原创 2021-11-16 22:02:43 · 1898 阅读 · 0 评论 -
parser.add_argument用法
parser.add_argument用法detect.py文件:if __name__ == '__main__': parser = argparse.ArgumentParser() parser.add_argument('--cfg', type=str, default='cfg/yolov3-spp-6cls.cfg', help='*.cfg path') parser.add_argument('--names', type=str, default='d...原创 2021-11-16 22:02:04 · 11443 阅读 · 1 评论 -
labelimg的使用
labelimg的安装首先激活相应的环境conda activate ***然后安装:pip install labelimglabelimg的使用labelimg首先将标签位置确定了,不然会出现意想不到的错误小技巧:可以将view下边的auto save mode 打开,这样就可以直接边标注变保存常用快捷键注释:Ctrl + u 加载目录中的所有图像,鼠标点击Open dir同功能 Ctrl + r 更改默认注释目标目录(xml文件保存的地址...原创 2021-11-16 22:01:23 · 2659 阅读 · 0 评论 -
匿名函数用法
匿名函数python 使用 lambda 来创建匿名函数。 lambda只是一个表达式,函数体比def简单很多。 lambda的主体是一个表达式,而不是一个代码块。仅仅能在lambda表达式中封装有限的逻辑进去。 lambda函数拥有自己的命名空间,且不能访问自有参数列表之外或全局命名空间里的参数。 虽然lambda函数看起来只能写一行,却不等同于C或C++的内联函数,后者的目的是调用小函数时不占用栈内存从而增加运行效率。 语法lambda函数的语法只包含一个原创 2021-11-16 22:00:23 · 2229 阅读 · 0 评论 -
Numpy 数组操作
Numpy 数组操作python菜鸟教程链接如下:numpy数组知乎cs231n笔记链接如下:CS231n课程笔记翻译:Python Numpy教程原创 2021-11-16 21:58:49 · 2556 阅读 · 0 评论 -
python中的[1:]、[::-1]、X[:,m:n]和X[1,:]
python中的[1:]、[::-1]、X[:,m:n]和X[1,:]Python中的[1:] 意思是去掉列表中第一个元素(下标为0),去后面的元素进行操作,以一个示例题为例,用在遍历中统计个数: 题:读入N名学生的成绩,将获得某一给定分数的学生人数输出。输入格式:输入在第1行给出不超过10^5^的正整数N,即学生总人数。随后1行给出N名学生的百分制整数成绩,中间以空格分隔。最后1行给出要查询的分数个数K(不超过N的正整数),随后是K个分数,中间以空格分隔。输出格式:在一行中按查询顺序给原创 2021-11-16 21:57:58 · 10987 阅读 · 0 评论 -
python基础25练-----深入掌握元组、列表、字典等基本操作和实例
1.初级问题:编写一个程序,它将找到所有这些数字,可被7整除,但不是5的倍数,2000年至3200 年(包括在内)。得到的数字应按逗号分隔的顺序打印在一行上。 提示:考虑使用 range(#begin, #end)方法l=[]for k in range(2000, 3200): if k%7==0 and k%5!=0: l.append(str(k))print(','.join(l))注意:join()的用法,用于将序列中的元素以指定的字符连接生成一个新的字符...原创 2021-11-16 21:56:31 · 5155 阅读 · 0 评论 -
面向对象编程三大特征---封装、继承和多态
1.面向对象的三个基本特征面向对象的三个基本特征是:封装、继承、多态。封装封装最好理解了。封装是面向对象的特征之一,是对象和类概念的主要特性。封装,也就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。继承面向对象编程 (OOP) 语言的一个主要功能就是“继承”。继承是指这样一种能力:它可以使用现有类的所有功能,并在无需重新编写原来的类的情况下对这些功能进行扩展。通过继承创建的新类称为“子类”或“派生类”。被继承的类称为“基.原创 2021-06-23 11:56:47 · 9169 阅读 · 0 评论