自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(48)
  • 收藏
  • 关注

原创 python目录

1.闭包和装饰器

2018-12-20 15:37:24 353

原创 Hadoop 原理和架构

04 | 移动计算比移动数据更划算那么如何解决 PB 级数据进行计算的问题呢?这个问题的解决思路其实跟大型网站的分布式架构思路是一样的,采用分布式集群的解决方案,用数千台甚至上万台计算机构建一个大数据计算处理集群,利用更多的网络带宽、内存空间、磁盘容量、CPU 核心数去进行计算处理。既然数据是庞大的,而程序要比数据小得多,将数据输入给程序是不划算的,那么就反其道而行之,将程序分发到数据所在的...

2020-03-12 00:22:11 1225

原创 环境变量被污染,自动开启代理,导致无法上网

突然cmd中,jupyter ipython等命令都不能使用了。查询发现环境变量被Subversion污染,修改就好有时候突然不能上网,显示代理服务器异常。但我明明都没有开代理,后来在chrome设置查找代理,找到windows的代理设置,如下图,发现自动开启了手动代理,关闭就解决了...

2019-12-12 23:23:18 834

原创 Python 设计模式 - "策略" 模式

1. 经典类实现方式from abc import ABC, abstractmethodfrom collections import namedtupleCustomer = namedtuple('Customer', 'name fidelity')class LineItem: def __init__(self, product, quantity, price):...

2019-11-11 23:14:17 209

原创 Jupyter Notebook 和 Python 配置环境变量

先找到这两个脚本位置C:\lllong33\software\Anaconda3\Scripts\ipython.exeC:\lllong33\software\Anaconda3\python.exePath中添加C:\lllong33\software\Anaconda3\ScriptsC:\lllong33\software\Anaconda3重新打开CMD窗口,就可以使用了...

2019-10-04 10:46:45 1468

原创 svn: E230001: Server SSL certificate verification failed

问题描述:重装系统后,将原电脑文件直接迁移过来的,导致该问题。解决过程:1.将svn.exe的bin目录添加进 环境变量 即path2.执行 svn ls http://…com, 选择P, 输入账号密码,再去pycharm使用就成功了...

2019-10-04 10:37:27 200

原创 Python 算法(五) 哈希函数(哈希表)、RandomPool结构、并查集结构、岛问题

哈希函数: 又称散列算法、哈希函数,是从任何一种数据中创建小的数字“指纹”的方法。将消息或数据压缩成摘要,使得数据量变小,将数据的格式固定下来。或者说,即MD5、SHA等函数,实现将大集合映射为随机的小集合。小集合具有均分性哈希函数的技巧16进制的数,0-f中的一个数, 取值范围[0, 16*16=2**64-1)输入无穷大,输出固定哈希冲突,两个不同输入对应一个输出当输入域...

2019-07-07 16:57:58 439

原创 Python 算法(四) 二叉树,先序,中序,后续,完全、平衡、搜索二叉树

(不重要) 终端打印一颗二叉树,便于观察class Node: def __init__(self, value, left=None, right=None, parent=None): self.value = value self.left = left self.right = right self.parent =...

2019-06-30 14:15:32 201

原创 Python 算法(三、3) 队列和栈

一、固定数组实现队列和栈class ArrayStack: def __init__(self, arr): self.arr = arr self.size = 0 def peek(self): if self.arr == 0: return None return self.arr[...

2019-06-29 17:56:07 155

原创 Python 算法(三、2) 矩阵

1、转圈打印矩阵给定一个矩阵如下,转圈的方式打印它,结果为[1,2,3,4,8…], 格外空间复杂度为O(1)1 2 3 45 6 7 89 10 11 1213 14 15 16思路:坐标和圈来打印,利用左上角和右下角坐标解决边界问题,只有一行或者一列class PrintMatrixSpiralOrder: def __init__(self, ma...

2019-06-29 17:55:28 823

原创 Python 算法(三、1) 链表

1、判断一个链表是否为回文结构给定一个链表的头节点head,请判断该链表是否为回文结构。例如: 1->2->1,返回true。 1->2->2->1,返回true。15->6->15,返回true。 1->2->3,返回false。进阶:如果链表长度为N,时间复杂度达到O(N),额外空间复杂度达到O(1)。思路1:遍历过程中,将所有结...

2019-06-29 17:54:04 171

原创 Python 算法(二)补充,排序算法稳定性,工程中综合排序,比较器,桶排序

四、排序算法稳定性及其汇总定义:排序过程保证相同元素次序不发生改变。意义:业务需求,三个属性(name, age, height)的时候, height排序的时候,原始顺序age不会发送改变(按照height和age排序)。稳定性排序:冒泡排序、插入排序、归并排序不稳定性排序:选择排序:[4,4,4,3],第1个4和3交换位置,发送变化快排:[4,4,4,5], 随机选择的4跟...

2019-06-27 22:27:29 223

原创 Python 装饰器使用场景,注意点

闭包的定义:函数的返回值为函数对象装饰器的定义:通过装饰器,来修改原函数的一些功能,使得原函数不需要修改,就具备需要的功能。使用内置的装饰器@functools.wrap, 保留原函数的元信息import functoolsdef my_decorator(func): @functools.wraps(func) def wrapper(*args, **kwargs)...

2019-06-23 13:37:33 450

原创 SQL Server,Python,百万数据入库,常见问题

一、百万数据入库测试结果1、读取数据追求速度问题,使用csv缓存,从csv中获取数据,速度最快pymssql模块:使用execute, 然后fetchall(),速度在 7min 左右pandas read_sql:速度差不多,数据量大,速度有优势pyodbc模块、pyodbc模块待测试,速度应该会没差别pandas模块 read_csv:直接从csv文件取相同数据,read_csv...

2019-05-30 21:02:46 3073

原创 Python 排序算法(二)荷兰国旗问题、随机快排、堆排序

问题1:荷兰国旗问题给定一个数组arr,和一个数num,请把小于num的数放在数组的左边,等于num的数放在数组的中间,大于num的数放在数组的右边。要求额外空间复杂度O(1),时间复杂度O(N)import randomdef netherlands_flag(arr, l, r, num): less = l - 1 # 便于理解 more = r + 1 ...

2019-05-28 15:42:44 253

原创 Mysql 与 Python 交互

一、准备数据创建数据表-- 创建 "京东" 数据库create database jing_dong charset=utf8;-- 使用 "京东" 数据库use jing_dong;-- 创建一个商品goods数据表create table goods( id int unsigned primary key auto_increment not null, ...

2019-05-26 17:20:55 111

原创 Python 排序算法(一)、时间复杂度、冒泡、选择插入、对数器、递归、归并、小和、逆序对

认识时间复杂度常数时间的操作:跟数据量没有关系,每次时间都是固定的在常数操作数量的表达式中,只要高阶项,不要低阶项,也不要高阶项的系数,剩下的部分如果记为f(N),那么时间复杂度为0(f(N))评价算法好坏,先看时间复杂度的指标,然后分析不同数据样本下的实际运行时间(考虑常数项时间)实例:一个有序数组A,另外一个无序数组B,请打印B中所有不在A中的数,A数组长度为N,B数组长度为M...

2019-05-10 17:04:15 851 1

原创 Python CookBook fourth chapter(第四章)

import time# 4.1、手动遍历迭代器# 通过next()和StopIteration异常,取代foritems = [1,2,3]it = iter(items)next(it)1# 4.2 代理迭代# __iter__() 和 __str__() 和 __repr() 用法class Node: def __init__(self, value):...

2019-05-02 17:46:12 586

原创 实习碰到的问题,和解决方法

错题集1、a = 'You'print('\n',a)print('\n' + a)原因:第一个是输出两个字符,python中两个字符间自动存在一个空格;第二个是成为了一个字符,所有没有空格解决方法:print(’\n’,‘rpg’,sep=’’)2、找出列表出重复的元素https://python3-cookbook.readthedocs.io/zh_CN/latest/...

2019-05-02 17:18:48 2368 2

原创 pandas 时间序列,常用功能

时间模块:datetime1、datetime模块:datetime.date(), datetime.datetime(), datetime.timedelta()2、日期解析方法:parser.parsePandas时刻数据:Timestamp1、pd.Timestamp()2、pd.to_datetime(),errors='ignore'/'coerce', NaT(Not ...

2019-04-24 21:26:29 894

原创 pandas 处理数据常用功能

数据计算和统计基础mean() 默认参数axis=0,表示为列。与apply参数相反 也可设置skipna=False,默认为True,跳过空值count(),min(), sum(), median(), quantile(q=0.75) 统计分位数std(), var(), skew(), kurt() 标准差,方差,偏度,峰度cumsum(), cumprod(), cum...

2019-04-24 21:24:47 249

原创 pandas 练习1

需求1、对于每个product id,满足:6月有数,9月有数 且(7月8月任意一个月为空/0 OR 7+8的sales < 50%*9的sales)2、则 apply:7+8+9的数,按32% 30% 38%分配在这三个月,volume round到INT, value round到保留2位小数3、其中:sales = Value;sales_volume= Volume"""E...

2019-04-21 12:02:16 157

原创 三、pymongo操作,用Python操作mongodb

一、pymongo操作1、Python实例和插入,查找和更新,删除。from pymongo import MongoClientclass TestMongo: # 1、初始化实例和插入 def __init__(self): client = MongoClient(host="127.0.0.1") # 端口默认27017 sel...

2019-03-23 23:34:24 155

原创 二、mongodb高级操作

目录:【聚合管道,goup,match,project,sort,skip,limit,unwind,索引建立】一、mongodb高级操作:聚合管道,limit方法,unwind使用,索引建立1、mongodb的聚合管道概述:聚合(aggregate)是基于数据处理的聚合管道,每个文档通过一个由多个阶段(stage)组成的管道,可以对每个阶段的管道进行分组、过滤等功能,然后经过一系列的处...

2019-03-23 23:32:19 259

原创 一、Mongodb介绍(概述和安装)和基本操作(增删改查,高级查询,备份恢复)

一 、mongdb介绍和安装启动1.1 mongodb介绍“NoSQL”⼀词最早于1998年被⽤于⼀个轻量级的关系数据库的名字随着web2.0的快速发展, NoSQL概念在2009年被提了出来NoSQL在2010年⻛⽣⽔起, 现在国内外众多⼤⼩⽹站, 如facebook、 google、 淘宝、 京东、 百度等, 都在使⽤nosql开发⾼性能的产品对于⼀名程序员来讲, 使...

2019-03-21 23:37:39 157

原创 pycharm常用快捷键

1. pycharm高频率使用的快捷键Ctrl+Shift+F10 运行当前的页面Ctrl + / 注释(取消注释)选择的行Ctrl+Shift+F 高级查找Shift + Enter 开始新行TAB Shift+TAB 缩进/取消缩进所选择的行Ctrl + Y 删除当前插入符所在的行Ctrl + D 复制当前行、或者选择的块Ctrl + Shift + J 合并行Delete ...

2019-02-20 23:48:33 73

原创 mysql 数据准备、查询、条件、排序、聚合函数 分组、分页、连接查询 自关联 子查询

一、数据准备、基本查询创建数据库和数据表-- 创建数据库create database python_test_1 charset=utf8;-- 使用数据库use python_test_1;-- students表create table students( id int unsigned primary key auto_increment not null,...

2018-12-27 21:16:53 189

原创 mysql 简介、安装、创建、查看、修改、删除

一、数据库简介数据库是一种特殊文件,中间存储着数据。RDBMS关系型数据主要产品:(数据库排名:https://db-engines.com/en/ranking)oracle:以前大型项目中银行,电信等项目mysql:web时代使用最广泛ms sql server:在微软项目中使用sqlite:轻量级数据库,主要应用于移动平台​RDBMS和数据库的关...

2018-12-24 18:37:07 208

原创 Python 闭包

1.闭包实例:def line_conf(a, b): def line(x): return a*x + b return lineline1 = line_conf(1,1)line2 = line_conf(4,5)print(line1(5), line2(5)) #6, 52闭包相对于全局变量:不能很好的封装缺省参数:适应场景有限类对象:...

2018-12-20 15:42:43 342

原创 Python 装饰器

1. 介绍装饰器是程序开发中经常会用到的一个功能,用好了装饰器,开发效率如虎添翼,重要性相当于c语言中的指针。面试也经常问到。2.手动实现def set_func(func): def call_func(): print(&amp;quot;---这是权限验证1----&amp;quot;) print(&amp;quot;---这是权限验证2----&amp;quot;) func() return call_func@set

2018-12-20 15:38:32 237 1

原创 连接redis错误:ERR Client sent AUTH, but no password is set

解决:命令行进入Redis的文件夹:D:\Redis-x64-3.2.100&gt;redis-cli.exe查看是否设置了密码:127.0.0.1:6379&gt; auth foobared(error) ERR Client sent AUTH, but no password is set说明没有设置密码,执行命令:127.0.0.1:6379&gt; config set r...

2018-12-18 22:27:15 220

原创 Python 模块和包

01. 模块每一个以扩展名 py 结尾的 Python 源代码文件都是一个 模块模块别名 应该符合 大驼峰命名法不推荐import *,容易出现重名Python 中每一个模块都有一个内置属性 __file__ 可以 查看模块 的 完整路径在导入文件时,文件中 所有没有任何缩进的代码 都会被执行一遍!__name__ 是 Python 的一个内置属性,记录着一个 字符串,如果是被其他文件...

2018-12-03 18:27:46 264

原创 Python 面向对象

面相对象(封装,继承,多态)一个对象的 属性 可以是 另外一个类创建的对象私有属性和私有方法:处理方式:在 名称 前面加上 _类名 =&amp;gt; _类名__名称就可以访问了继承(体现出多态)对父类方法进行扩展:在子类中重写父类方法,在需要的位置调用super().父类方法,然后实现其他需求多继承:如果不同父类存在同名方法,子类会调用那个方法?python中存在MRO(method...

2018-12-03 18:14:09 169

原创 os模块

文件操作rename 重命名文件 os.rename(源文件名, 目标文件名)remove 删除文件 os.remove(文件名)目录操作listdir 目录列表 os.listdir(目录名)mkdir 创建目录 os.mkdir(目录名)rmdir 删除目录 os.rmdir(目录名)getcwd 获取当前目录 os.getcwd()chdir 修改工作目录 os.chd...

2018-12-03 18:01:55 78

原创 Python与sqlite3

要操作关系数据库,首先需要连接到数据库,一个数据库连接称为Connection;连接到数据库后,需要打开游标,称之为Cursor,通过Cursor执行SQL语句,然后,获得执行结果。Python定义了一套操作数据库的API接口,任何数据库要连接到Python,只需要提供符合Python标准的数据库驱动即可。由于SQLite的驱动内置在Python标准库中,所以我们可以直接来操作SQLite数...

2018-12-01 19:32:49 343

原创 chardet 判断编码

data = '离离原上草,一岁一枯荣'.encode('gbk')chardet.detect(data)#{'encoding': 'gb2312', 'confidence': 0.74 'language': ''}正常中文解析为gb2312编码,但 旻 不在其中,需要使用gbk编码,gbk是gb2312的超集。https://chardet.readthedocs.io/e...

2018-12-01 15:19:39 283

原创 python argparse

argparseargparse 是 Python 内置的一个用于命令项选项与参数解析的模块,Python 也有第三方的库可用于命令行解析,而且功能也更加强大,比如docopt,Click。1. argparse使用创建 ArgumentParser() 对象调用 add_argument() 方法添加参数使用 parse_args() 解析添加的参数2. add_argument...

2018-11-28 18:23:14 145 1

原创 python与协程

一. 迭代器(iterator)iterable,iterator,iteration可迭代对象可以通过for … in … 这类语句迭代的对象称为可迭代对象# 通过isinstance判断一个对象是否为iterable和iterator对象from collections import Iterable, Iteratorisinstance([], Iterable) # Tru...

2018-11-27 16:23:08 198

原创 python与进程

一. 进程的创建-from multiprocessing import ProcessProcess语法结构Process([group [, target [, name [, args [, kwargs]]]]])target:如果传递了函数的引用,可以任务这个子进程就执行这里的代码args:给target指定的函数传递的参数,以元组的方式传递kwargs:给target指...

2018-11-27 16:11:30 110

原创 python与线程

1. 概念同步概念:协同步调,按预定的先后次序运行并发:不同时运行(线程)并行:同时运行(进程)同步原语:1.互斥锁,2.信号量原语,3.queue队列上下文管理器:with死锁:1.通过银行家算法解决,2.添加超时时间模块:threading.Thread线程池:创建线程需要经过启动、销毁和运行3个过程。创建和用完的线程放入一个容器中,用户下次使用无须再开辟一个新进程。节约开辟新...

2018-11-27 16:02:04 127

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除