Python学习
菜鸟知识搬运工
在校研究生
展开
-
PyCharm常用快捷键和设置
1、编辑(Editing)Ctrl + Space基本的代码完成(类、方法、属性)Ctrl + Alt + Space快速导入任意类Ctrl + Shift + Enter语句完成Ctrl + P参数信息(在方法中调用参数)Ctrl + Q快速查看文档F1外部文档Shift + F1外部文档,进入web文档主页Ctrl + S...转载 2019-02-18 16:23:24 · 440 阅读 · 0 评论 -
numpy.random模块常用函数
在Numpy库中,常用使用np.random.rand()、np.random.randn()和np.random.randint()随机函数。1、 np.random.randn()函数作用:返回一个或一组服从标准正态分布的随机样本值1)当函数括号内没有参数时,则返回一个浮点数;2)当函数括号内有一个参数时,则返回秩为1的数组,不能表示向量和矩阵;3)当函数括号内有两个及以上...原创 2019-05-28 21:28:36 · 2055 阅读 · 0 评论 -
Python3 面向对象
我们先来简单的了解下面向对象的一些基本特征。类(Class):用来描述具有相同的属性和方法的对象的集合。它定义了该集合中每个对象所共有的属性和方法。对象是类的实例。 方法:类中定义的函数。 类变量:类变量在整个实例化的对象中是公用的。类变量定义在类中且在函数体之外。类变量通常不作为实例变量使用。 数据成员:类变量或者实例变量用于处理类及其实例对象的相关的数据。 方法重写:如果从父类继...转载 2019-06-13 15:01:21 · 418 阅读 · 0 评论 -
滑动窗口法LeetCode
什么是滑动窗口? 其实就是一个队列,比如例题中的 abcabcbb,进入这个队列(窗口)为 abc 满足题目要求,当再进入 a,队列变成了 abca,这时候不满足要求。所以,我们要移动这个队列!我们只要把队列的左边的元素移出就行了,直到满足题目要求!一直维持这样的队列,找出队列出现最长的长度时候,求出解!时间复杂度:O(n)题目:给定一个字符串,请你找出其中不含有重复字符的最长子...原创 2019-06-08 18:24:30 · 1279 阅读 · 0 评论 -
Python 链表
数据结构是计算机科学必须掌握的一门学问,很多的教材都是用C语言实现链表,因为C有指针,可以很方便的控制内存,很方便就实现链表,其他的语言,则没那么方便,有很多都是用模拟链表. 因为python是动态语言,可以直接把对象赋值给新的变量。在C/C++中,通常采用“指针+结构体”来实现链表;而在Python中,则可以采用“引用+类”来实现链表。链表的定义:是一组数据项的集合...原创 2019-06-03 13:29:17 · 50792 阅读 · 5 评论 -
Python的from和import用法
import使一个变量名引用整个模块对象,因此必须通过模块名称来得到该模块的属性,比如我们导入一个数学计算的模块 math: import math print math.pi #导出圆周率的值>>>3.14159265359 我们导入math模块,在python模块学习中我们会知道,这样做会得到名math的对象,这个模块对象包含了pi这样的常量,...原创 2019-06-22 11:01:38 · 166054 阅读 · 10 评论 -
tf.Variable、tf.get_variable、tf.variable_scope以及tf.name_scope
tf.Variable与tf.get_variable tensorflow提供了通过变量名称来创建或者获取一个变量的机制。通过这个机制,在不同的函数中可以直接通过变量的名字来使用变量,而不需要将变量通过参数的形式到处传递。TensorFlow中通过变量名获取变量的机制主要是通过tf.get_variable和tf.variable_scope实现的。当然,变量也可以通过tf.Var...转载 2019-06-24 16:03:12 · 301 阅读 · 0 评论 -
笔试题
1、计算斐波那契数列第n项的函数定义如下: 1 2 3 4 5 6 7 8 int fib(int n){ if(n==0) return 1; else if(n==1) return 2; els...原创 2019-07-06 14:08:58 · 4579 阅读 · 0 评论 -
进程和线程
首先需要理解什么是进程和线程。有一个很好的类比,可以把它们解释地清晰易懂:1.计算机的核心是CPU,它承担了所有的计算任务。它就像一座工厂,时刻在运行。2.假定工厂的电力有限,一次只能供给一个车间使用。也就是说,一个车间开工的时候,其他车间都必须停工。背后的含义就是,单个CPU一次只能运行一个任务。3.进程就好比工厂的车间,它代表CPU所能处理的单个任务。任一时刻,CPU总是运行...转载 2019-07-20 20:24:28 · 201 阅读 · 0 评论 -
Python内置函数总结
sort()与sorted函数: sort()函数是针对列表定义的函数,用于对原列表进行排序,如果指定参数,则使用比较函数指定的比较函数。该方法没有返回值,但是会对列表的对象进行排序,执行完后会改变原来的list,如果你不需要原来的list,这种效率稍微高点list.sort(cmp=None, key=None, reverse=False)cmp -- 可选参数, 如果指...原创 2019-08-01 16:57:03 · 441 阅读 · 0 评论 -
简单编程题
寻找数组中第二小的元素1、用排序算法for i in range(n,n-2,-1): for j in range(i-1): if list[j]<list[j+1]: list[j],list[j+1]=list[j+1],list[j]second=list[-2]2、一次遍历fmin=0smin=0for i in list: ...原创 2019-08-20 20:37:41 · 417 阅读 · 0 评论 -
动态规划问题
动态规划过程是:每次决策依赖于当前状态,又随即引起状态的转移。一个决策序列就是在变化的状态中产生出来的,所以,这种多阶段最优化决策解决问题的过程就称为动态规划。 假设问题是由交叠的子问题所构成,我们就能够用动态规划技术来解决它。一般来说,这种子问题出自对给定问题求解的递推关系中,这个递推关系包括了同样问题的更小子问题的解。动态规划法建议,与其对交叠子问题一次重新的求解,不如把...转载 2019-08-27 15:37:33 · 498 阅读 · 0 评论 -
python输入输出
input()Python3.x 中 input() 函数接受一个标准输入数据,返回为 string 类型。 在 Python3.x 中 raw_input() 和 input() 进行了整合,去除了 raw_input( ),仅保留了input( )函数,其接收任意任性输入,将所有输入默认为字符串处理,并返回字符串类型。>>>a = input("input...原创 2019-08-29 18:58:21 · 537 阅读 · 0 评论 -
Python的数据类型与结构
标准数据类型Python3 中有六个标准的数据类型:Number(数字) String(字符串) List(列表) Tuple(元组) Set(集合) Dictionary(字典)其中:不可变数据(3 个):Number(数字)、String(字符串)、Tuple(元组); 可变数据(3 个):List(列表)、Dictionary(字典)、Set(集合)。 ...原创 2019-05-23 13:06:28 · 849 阅读 · 0 评论 -
numpy库中的mat和array使用小结
numpy的导入和使用:fromnumpyimport*;矩阵Mat的创建1、由一维或二维数据创建矩阵a1=array([1,2,3]);a1=mat(a1);由列表list创建矩阵list=[1,2,3]mat(list)》》matrix([[1, 2, 3]])2、创建常见的矩阵data1=mat(zeros((3,3)));#创建一个3*...原创 2019-05-21 10:02:42 · 4302 阅读 · 0 评论 -
在PyCharm下使用Jupyter Notebook
在PyCharm中新建Jupyter Notebook文件步骤:File->New…->Jupyter Notebook->输入文件名建好之后效果如下图所示,熟悉的Jupyter Notebook输入代码,点击绿色三角图标,运行,出现窗口如下:点击“Cancel”取消 ,点击左下角的“Terminal”,输入“Jupyter-notebook”...原创 2019-02-22 13:41:31 · 28338 阅读 · 6 评论 -
numpy函数
目录1、np.c_和np.r_的用法解析2、shape函数3、ones函数4、eyes函数6、numpy.ceil()7、linalg模块7.1、创建矩阵7.2、使用inv函数计算逆矩阵7.3、求解线性方程组7.4、np.linalg.det()7.5、linalg.eig()8、numpy.ravel() vs numpy.flatten()...原创 2019-02-23 15:49:27 · 6665 阅读 · 0 评论 -
panda 函数笔记(merge\DataFrame用法\DataFrame.plot)
1、merge( ) 2、DataFrame用法 2.1、创建一个DataFrame: 2.2、定位DataFrame里的元素2.3、csv文件读写read_ csv/to_csv 2.4、关于len() ...原创 2019-02-23 16:11:44 · 2485 阅读 · 0 评论 -
jupyter notebook使用入门2——创建一个基于scikit-Learn的线性预测ipynb文件
关于jupyter notebook的安装可参考博客:https://blog.csdn.net/qq_30815237/article/details/865775591、接下来新建一个ipynb文件,点击右上角的“new",选择”Python[conda env:anaconda3]"得到下图:图中有“code”,点击它右侧的下三角,可以看到不同的格式,先选择“markdow...原创 2019-02-23 16:22:21 · 2907 阅读 · 0 评论 -
jupyter notebook快捷键
Jupyter的各种快捷键(jupyter有两个模式,命令模式和编辑模式) 当前cell侧边为蓝色时,表示此时为命令模式,按Enter切换为编辑模式 当前cell侧边为绿色时,表示此时为编辑模式,按Esc切换为命令模式命令模式快捷键: 双击D:删除当前cell Shift-Enter:运行当前cell并跳转到下一cell Alt-Enter:运行当前cell并在...转载 2019-02-23 16:31:18 · 317 阅读 · 0 评论 -
os.path.join()函数用法
python路径拼接os.path.join()函数的用法os.path.join()函数:连接两个或更多的路径名组件 1.如果各组件名首字母不包含’/’,则函数会自动加上 2.第一个以”/”开头的参数开始拼接,之前的参数全部丢弃,当有多个时,从最后一个开始 3.如果最后一个组件为空,则生成...原创 2019-02-24 15:04:02 · 100669 阅读 · 8 评论 -
matplotlib常见函数- plt.rcParams、matshow/坐标轴设置
1、plt.rcParamsplt(matplotlib.pyplot)使用rc配置文件来自定义图形的各种默认属性,称之为“rc配置”或“rc参数”。通过rc参数可以修改默认的属性,包括窗体大小、每英寸的点数、线条宽度、颜色、样式、坐标轴、坐标和网络属性、文本、字体等。rc参数存储在字典变量中,通过字典的方式进行访问。代码:import numpy as npimport m...原创 2019-02-24 15:11:28 · 18456 阅读 · 1 评论 -
Python for循环语句总结
for 循环提供了python中最强大的循环结构(for循环是一种迭代循环机制,而while循环是条件循环,迭代即重复相同的逻辑操作,每次操作都是基于上一次的结果进行的)for循环可以遍历任何序列的项目,如一个列表或者一个字符串。for循环的语法格式如下:for iterating_var in sequence: statements(s)for循环实例: ...转载 2019-03-03 20:27:16 · 8613 阅读 · 1 评论 -
python 大括号中括号小括号的区分
python语言最常见的括号有三种,分别是:小括号( )、中括号[ ]和大括号也叫做花括号{ }。其作用也各不相同,分别用来代表不同的python基本内置数据类型。1.python中的小括号( ):代表tuple元组数据类型,元组是一种不可变序列。创建方法很简单,大多时候都是用小括号括起来的。>>> tup = (1,2,3) >>> tup ...转载 2019-03-03 20:39:07 · 17742 阅读 · 0 评论 -
非极大值抑制(NMS)
极大值抑制(Non-Maximum Suppression,NMS),顾名思义就是抑制不是极大值的元素,可以理解为局部最大搜索。这个局部代表的是一个邻域,邻域有两个参数可变,一是邻域的维数,二是邻域的大小。这里不讨论通用的NMS算法(参考论文《Efficient Non-Maximum Suppression》对1维和2维数据的NMS实现),而是用于目标检测中提取分数最高的窗口的。例如...原创 2019-03-15 14:17:20 · 7287 阅读 · 0 评论 -
Python常见设计模式
设计模式是一套被反复使用的、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了重用代码、让代码更容易被他人理解、保证代码可靠性。0:接口 定义:一种特殊的类,声明了若干方法,要求继承该接口的类必须实现这种方法 作用:限制继承接口的类的方法的名称及调用方式,隐藏了类的内部实现from abc import ABCMeta,abstractmethodc...原创 2019-05-06 16:16:43 · 1253 阅读 · 0 评论 -
Python 排序
1、冒泡排序交换过程图示(第一次):我们一共需要进行n-1次冒泡过程def bubble_sort(list): for i in range(len(list)-1,0,-1): for j in range(i): if(list[j]>list[j+1]): list[j+1],list...转载 2019-05-24 14:30:02 · 313 阅读 · 0 评论 -
面向对象的三特性(继承、多态、封装 )Python
继承是一种创建新类的方式,在python中,新建的类可以继承一个或多个父类,父类又可称为基类或超类,新建的类称为派生类或子类python中类的继承分为:单继承和多继承class ParentClass1: #定义父类 passclass ParentClass2: #定义父类 passclass SubClass1(ParentClass1): #单继承,基类是Par...转载 2019-09-02 22:13:44 · 463 阅读 · 0 评论