python
文章平均质量分 60
wf592523813
这个作者很懒,什么都没留下…
展开
-
Python中的heapq模块
heapq模块提供基于堆的优先排序算法,内置模块位于./Anaconda3/Lib/heapq.py。堆的逻辑结构就是完全二叉树,并且二叉树中父节点的值小于等于该节点的所有子节点的值。这种实现可以使用 heap[k] <= heap[2k+1] 并且 heap[k] <= heap[2k+2] (其中 k 为索引,从 0 开始计数)的形式体现,对于堆来说,最小元素即为根元素 heap[0]。1.初始原创 2017-12-13 16:16:46 · 455 阅读 · 0 评论 -
深度学习:Keras入门(一)之基础篇
https://blog.csdn.net/zdy0_2004/article/details/74736656http://www.cnblogs.com/lc1217/p/7132364.html1.关于Keras1)简介 Keras是由纯python编写的基于theano/tensorflow的深度学习框架。 Keras是一个高层神经网络API,支持快...转载 2018-04-25 14:02:01 · 255 阅读 · 0 评论 -
python之多线程与多进程
操作系统任务调度时间片大部分操作系统的任务调度采用时间片轮转的抢占式调度方式,也就是说一个任务执行一小段时间后强制暂停去执行下一个任务,每个任务轮流执行。任务执行的一小段时间叫做时间片运行状态:任务正在执行时的状态叫做运行状态就绪状态:任务执行一段时间后强制暂停去执行下一个任务,被暂停的任务就处于就绪状态等待下一个属于他的时间片的到来。并发:每个任务都能得到执行,由于CPU的执行效率非...原创 2019-04-16 11:41:25 · 169 阅读 · 0 评论 -
.tsv和.csv格式文件区别及python处理
机器学习中,我们在使用一些经典的分类器对数据进行分类时,需要对数据进行一些必要的预处理。或者我们在使用别人提供的数据使用一些经典的机器学习算法进行学习时,一般常见的数据格式会是.tsv和.csv格式.逗号分隔值(Comma-Separated Values,CSV,有时也称为字符分隔值,因为分隔字符也可以不是逗号),其文件以纯文本形式存储表格数据(数字和文本)。纯文本意味着该文件是一个字符序列...原创 2019-04-09 22:49:41 · 7319 阅读 · 0 评论 -
python函数之默认参数、可变参数、关键字参数和更pythonic的编程
默认参数、可变参数、关键字参数如果一个函数的参数中含有默认参数,则这个默认参数后的所有参数都必须是默认参数也就是说默认参数要放在参数最后。def format_date(year = 2007, month, day): print("%d-%02d-%02d" % (year, month, day))# SyntaxError: non-default argument fol...原创 2019-04-16 17:21:15 · 176 阅读 · 0 评论 -
pandas学习笔记
异常值检测和过滤使用 describe() 函数查看每一列的描述性统计count 列的元素的个数mean 平均值std 标准方差,描述数据的波动,离散程度min 最小max 最大数据小于标准方差的四倍,认为数据是有意义的DataFrame.info()这个函数可以输出读入表格的一些具体信息。这对于加快数据预处理非常有帮助。独热编码实现方法比较1、pandas自带的get_du...原创 2019-04-15 22:52:59 · 332 阅读 · 0 评论 -
python 输入一个字符串,把与字符串的第一个字母相同的字母替换成‘*’
def sub_use_xing(str): ''' 输入一个字符串,把与字符串的第一个字母相同的字母替换成‘*’ :param str: :return: ''' for i in range(1, len(str)): if str[i] == str[0]: str = str[:i] + '*' + s...原创 2019-04-15 11:27:02 · 7593 阅读 · 0 评论 -
linux下导入自己写的模块,找不到conda命令
自定义的模块必须PYTHONPATH上,否则在导入该模块时会出现找不到该模块的错误,即必须把所需要的模块的路径添加到PYTHONPATH(一般情况下是把lib/python3.5/site-packages添加到PYTHONPATH)。具体做法如下:(1) 在~/.bashrc 中输出环境变量export PYTHONPATH=$PYTHONPATH:模块路径(2) 更新PATHONPAT...原创 2019-07-01 21:45:05 · 1588 阅读 · 0 评论 -
json.dump(), json.dumps()与json.load(), json.loads()区别
json 模块提供了一种很简单的方式来编码和解码JSON数据。 其中四个主要的函数是 json.dump(), json.dumps()与json.load(), json.loads()。1.json.dumps()将一个Python数据结构转换为JSON,即将dict类型的数据转成str,因为如果直接将dict类型的数据写入json文件中会发生报错,因此在将数据写入时需要用到该函数。im...原创 2019-07-07 16:49:16 · 4842 阅读 · 0 评论 -
Keras中的回调函数Callbacks详解
介绍回调函数是一组在训练的特定阶段被调用的函数集,你可以使用回调函数来观察训练过程中网络内部的状态和统计信息。通过传递回调函数列表到模型的.fit()中,即可在给定的训练阶段调用该函数集中的函数。虽然我们称之为回调“函数”,但事实上Keras的回调函数是一个类keras.callbacks.Callback()是回调函数的抽象类,定义新的回调函数必须继承自该类类属性params:...原创 2019-07-07 21:28:58 · 27768 阅读 · 1 评论 -
pandas中Dataframe选取指定行和列或删除含有指定数值的行或者列
pandas中的切片方法[],loc,iloc,at,iat,ix基础数据import pandas as pdimport randomrandom.seed(0)rnd_1 = [random.randrange(1,20) for x in range(10)]rnd_2 = [random.randrange(1,20) for x in range(10)]rnd_3 =...原创 2019-07-17 11:08:11 · 72940 阅读 · 3 评论 -
利用切片操作去除字符串首尾空格
https://blog.csdn.net/daniel960601/article/details/79174915利用切片操作,实现一个trim()函数,去除字符串首尾的空格,注意不要调用str的strip()方法思路:只需要从头到尾、从尾到头各扫描一次,记录两端需要截取的位置,去除两端空格即可。需要注意全是空格的情况。def trim(s): length = len(s...转载 2018-04-30 23:42:00 · 1318 阅读 · 1 评论 -
Numpy的基础用法--常用函数(一)
# encoding=utf-8import numpy as npdef startMain(): lst = [[1, 3, 5], [2, 4, 6]] np_lst = np.array(lst) np_lst1 = np.array(lst, dtype=np.float) print(type(np_lst1)) print(type(n...原创 2018-03-14 09:51:13 · 244 阅读 · 0 评论 -
python之socket
socket通常也称作“套接字”,用于描述IP地址和端口,是一个通信链的句柄,应用程序通常通过“套接字”向网络发出请求或者应答网络请求。 我们使用socket的时候需先导入socket模块import socket然后实例化socket,例如:sk = socket.socket(socket.AF_INET,socket.SOCK_STREAM,0)参数一:地址簇socket.AF_INET原创 2017-12-13 16:35:13 · 180 阅读 · 0 评论 -
python之ConfigParser模块
configParser 模块用于操作配置文件注:Parser汉译为“解析”之意。配置文件的格式与windows ini文件类似,可以包含一个或多个节(section),每个节可以有多个参数(键=值)。为了更好的理解本文,我们先了解一下配置文件的组成及命名:配置文件(INI文件)由节(section)、键、值组成。样例配置文件example.ini [book] title:Con转载 2017-12-13 17:01:26 · 144 阅读 · 0 评论 -
python之zip()函数
zip()函数接受任意多个序列作为参数,返回一个tuple列表。**栗子:如果元素等长进行zip(),依次取出每一个数组的元素,然后组合,栗子:x = [1, 3, 2]y = [4, 5, 6]z = [7, 8, 9]xyz = zip(x, y, z)print xyz结果[(1, 4, 7), (3, 5, 8), (2, 6, 9)]如果元素不等长进行zip(),会被砍到一样长再操原创 2017-12-14 16:01:38 · 351 阅读 · 0 评论 -
numpy之shape和reshape
导入numpy模块 from numpy import * import numpy as np numpy.shape(a)数:类似数组(比如列表,元组)等,或是数组返回:一个整型数字的元组,元组中的每个元素表示相应的数组每一维的长度 类似数组#一维列表 L=range(5) shape(L) #(5,)#二维列表 L=[[1,2,3],原创 2018-01-11 21:11:17 · 3688 阅读 · 0 评论 -
python之re.sub()和subn()和random.sample()
re.sub(pattern, repl, string, count=0, flags=0) 其中三个必选参数:pattern, repl, string两个可选参数:count, flags第一个参数:patternpattern,表示正则中的模式字符串。需要知道的是:反斜杠加数字(\N),则对应着匹配的组(matched group) 比如\6,表示匹配前面patt原创 2018-01-22 10:15:48 · 5254 阅读 · 0 评论 -
Python之生成器(Generator)
本篇博客主要介绍什么是生成器、简单生成器、带yield 语句的生成器、加强的生成器等内容。通过列表生成式,可以直接创建一个列表。但是由于内存限制,列表容量是有限的。而且创建一个包含100万个元素的列表,不仅占用很大的存储空间,如果仅仅需要访问前面几个元素,那后面绝大多数元素占用的空间都白白浪费了。如果列表元素可以按照某种算法推算出来,可以在循环的过程中不断推算出后续的元素,这样就不必创建完原创 2018-01-22 11:32:59 · 177 阅读 · 0 评论 -
python之urlencode(),quote()及unquote()
URL编码、解码原因通常如果一样东西需要编码,说明其并不适合直接传输。原因多种多样,如Size过大,包含隐私数据。对于Url来说,之所以要进行编码,是因为Url中有些字符会引起歧义。例如,Url参数字符串中使用key=value键值对这样的形式来传参,键值对之间以&符号分隔,如/s?q=abc&ie=utf-8。如果你的value字符串中包含了=或者&,那么势必会造成接收Url的服务器解析原创 2018-01-23 16:32:39 · 37723 阅读 · 5 评论 -
Python之map()和reduce()函数。
Python内建map()和reduce()函数map()函数接收两个参数,一个是函数,一个是序列,map将传入的函数依次作用到序列的每个元素,并把结果作为新的list返回。 map()传入的第一个参数是f,即函数对象本身。比如有一个函数f(x)=x2,要把这个函数作用在一个list [1, 2, 3, 4, 5, 6, 7, 8, 9]上,就可以用map()实现如下: def f原创 2018-01-31 15:15:13 · 300 阅读 · 0 评论 -
socket.error: [Errno 10048]及查看pid进程号和端口号
最近用python编写一个socket编程,运行时有时会出现错误: socket.error: [Errno 10048] 通常每个套接字地址(协议/网络地址/端口)只允许使用一次经过搜索发现这个提示是在端口冲突的时候出现,可能的原因是在服务器程序中创建一个Socket打开一个端口后,在程序结束的时候没有关闭这个Socket,因此下次启动程序就会出现这个错误提示,解决方法:1、在服务器原创 2017-12-25 23:12:40 · 10906 阅读 · 0 评论 -
python之re模块,正则表达式
python的re模块提供了类似于Perl的正则表达式匹配操作。要匹配的模式和字符串可以是Unicode字符串以及8位字符串。 正则表达式使用反斜杠字符(‘\’)来表示特殊的形式或者来允许使用特殊的字符而不要启用它们特殊的含义。这与字符串字面值中相同目的的相同字符的用法冲突;例如,要匹配一个反斜线字面值,你必须写成’\\’作为模式字符串,因为正则表达式必须是\,每个反斜线在Python字符串原创 2018-01-25 17:34:30 · 163 阅读 · 0 评论 -
面向对象编程的三大特性
转载自 面向对象的三大特性封装、继承、多态封装和继承的作用都是为了代码重用,多态是为了接口重用。封装封装是把客观事物抽象成类,并且把自己的属性和方法让可信的类或对象操作,对不可信的隐藏。继承继承可以使某个类使用现有类的所有功能,并且无需重新编写原来的类的情况下对这些功能进行扩展。继承得到的新类称为“子类”或“派生类”。被继承的父类称为“基类”、“父类”或“超类”。继承的过程是一个...转载 2019-08-09 21:54:12 · 1130 阅读 · 0 评论