自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Peijun的博客

Keep writing code

  • 博客(42)
  • 收藏
  • 关注

原创 十一种经典排序算法, python3实现

首先要感谢算法的发明者, 要不是他们想的这么精妙的算法, 我也不会到现在还在头疼交换排序冒泡排序梳排序快速排序选择排序简单选择排序堆排序插入排序简单插入排序希尔排序归并排序分配排序计数排序桶排序基数排序完整的测试效率比较代码交换排序冒泡排序两两比较, 并交换位置, 直到末尾。排除末尾数字, 重复1步骤, 直到只剩下...

2018-08-15 13:56:13 780

翻译 密码学

原文:Sololearn Cryptography教程什么是密码学?密码学是一种协议构建和分析,为了阻止第三方或者公众访问私人信息。信息安全包括很多方面,比如数据机密性,数据完整性,认证,不可抵赖性,是现代密码学的核心。现代密码学非常依赖数学理论和计算科学,密码学算法的设计围绕计算的难度展开,使算法不容易被破解。存在理论上的信息安全方案,即使拥有无限的算力,也无法被破解。密码学同样在数字...

2018-10-04 11:36:26 442

翻译 SQLAlchemy使用

SQLAlchemy原文地址:Object Relational Tutorial获得当前版本sqlalchemy.__version__Connectingfrom sqlalchemy import create_engineengine = create_engine('',echo=True)Declare a Mapping定义基类from sqlalchemy.ex...

2018-10-02 16:26:35 450

翻译 RESTful API

总结翻译自SoloLearn RESTful API 教程RESTful API概述Representational State Transfer 表象状态传输,由美国科学家Roy Thomas Fielding定义,是一种常用在web开发中,用于传递状态信息的一种构建风格和方法。经常用于HTTP web APIs,不需要任何额外的库或者包。 What is HTTP? HTT...

2018-09-14 18:26:48 196

原创 Bootstrap3

还是要分享一下SoloLearn,教程通俗易懂Bootstrap 3Grid System栅格系统12 individual columns xs,sm,md,lg class = container, container-fluid, row, col-md-6, col-md-offset-6 visible-md-block 表示在早中型设备台式电脑(≥992px)可显...

2018-09-12 11:09:19 275

原创 设计模式

设计模式就是一种描述或是一个模板,用于在不同的程序编写情境中,解决类似的问题。 三个基本的类型的设计模式:Creational,Structural,BehavioralCreationalSingleton Desion Pattern 单例模式当一个类不多不少只有一个实例时使用 python代码实现class Singleton(type): def _...

2018-09-11 11:52:20 173

原创 python练习(14)——使用栈实现eval函数的部分功能(加减乘除,括号运算, 负号)

# 定义优先级,运算符与函数建立映射 opes_level = {'(': -1, ')': -1, '-': 0, '+': 0, '/': 1, '*': 1}opr_func = {'+': lambda x, y: x + y, '-': lambda x, y: x - y, '/': lambda x, y: x / y, '*': lambda x, y: x * y}ope...

2018-08-29 00:17:20 987

原创 jQuery

jQuery分享一个学习web开发app,SoloLearn https://www.sololearn.com/,教程通俗易懂,上手快 以下内容都是上面学到的,留作以后参考$("#start").html("Go")$(document).ready(function() {});等价$(function(){}); selectors: Attributes..

2018-08-28 11:39:30 165

原创 jinja2语法

官方文档 本文只是官方文档的部分摘录,只记录了常用语法,和python非常类似,方便快速理解使用 语法{% ... %} for Statements{{ ... }} for Expressions to print to the template output{# ... #} for Comments not included in the template output# ...

2018-08-21 16:57:06 4750

原创 Javascript

CMS : Content Management System 内容管理系统 HTML DOM: HTML Document Object Model 文档对象模型,html的API,javascript利用DOM动态的修改网页 最早诞生的动态网页技术有ASP, JSP, PHP AJAX Asynchronous Javascripf And XML (json) 异步请求,动态的从浏...

2018-08-17 23:12:58 228

原创 Numpy简单使用

```pythonimport numpyarr = numpy.array([[1,2,3,4],[5,6,7,8]])print(arr)print(arr[1, 2])print(arr.ndim) # rank 维度数print(arr.shape) # rows, columns 行列数print(arr.size) # number of elemen...

2018-08-14 09:45:17 187

原创 python3_网络编程

网络编程socket标准库TCPUDP编程SocketServerzerorpc异步编程asyncio库aiohttpWSGI协议 Web Server Gateway Interface类Flask框架实现django认证密码加密bcrypt网络编程socket标准库socket标准库是非常底层的接口库,socket是一种通用的...

2018-08-06 15:54:06 1101

原创 网络基础

网络基础ISO 国际标准化组织 OSI 开放系统互联, 七层模型物理层,二进制传输,bit位数据链路层,访问介质,格式化数据,错误检测,frame帧,物理地址MAC网络层,数据传输,路由,选择最佳路径,逻辑寻址,数据包,packet传输层,传输问题,确保数据传输的可靠性,segment段(fragment片)会话层,主机间通信,端连接表示层,数据表示,格式化,加密解密应用层...

2018-08-06 15:52:01 485

原创 python3_关系型数据库mysql

关系型数据库基础MySQLSQL: Structure Query Language新建仓库创建表TABLE数据类型tinyint(m)表操作插入数据INSERT更新数据UPDATE删除数据DELETE查询语句SELECT视图VIEW函数function存储过程procedure触发器trigger: 定义后,由事件触发执行MySQL用户和权限管理设置(SET...

2018-08-06 09:44:48 540

原创 python3_线程和进程

进程和线程进程和线程概述线程同步Cpython 的多线程多进程编程concurrent 包并发进程和线程进程和线程概述进程(Process) 是计算机中程序关于某数据集合上是一次活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础. 线程 是轻量级进程(Lightweight Process,LWP),是程序执行流的最小单位. 一个标...

2018-08-05 15:18:22 289

原创 python3_异常

异常try: # raise -> raise 默认重新抛出最近一次产生的异常,如果最近没有则抛出RuntimeError: No active exception to reraise raise # raise可以实例化某种异常,默认TypeError,不写()表示无参实例化,如果raise后不是异常类则抛出Typ...

2018-08-05 15:00:38 2113

原创 python3_模块

模块sys.modules -> 系统已加载模块的字典 sys.path -> import module 的搜索顺序, 返回list,只搜索目录中文件,不会递归搜索很多module已经提前加载,只是不在名词空间中,比如只import os 就可以直接使用os.path,而只import w, 却不能使用w.w1,需要import w.w1才可以 mod

2018-08-05 00:37:43 162

原创 python3_面向对象

面向对象魔术方法描述器Descriptors槽位slots面向对象OOP Object Oriented Programing 面向对象是认识世界的一种方法论, 一切皆对象 类class: 抽象的概念,一类具有共同特征的事物的集合;用计算机语言来描述,就是属性和方法的集合 实例instance: 类的一个实现 属性,是对象状态的抽象 方法,是对象...

2018-08-05 00:33:30 625

原创 python3_正则表达式

正则表达式Regular Expression基本语法元字符matecharacter重复转义分组捕获断言引擎选项例子re库编译单次匹配全文匹配替换分割match 对象的分组正则表达式Regular Expressiondomain specific language (DSL) 特点领域的语言 匹配规则: 从左往右读取,匹配到...

2018-08-03 11:38:53 305

原创 python3_文件操作

文件操作open函数StringIO & BytesIO路径操作os.path模块pathlib模块glob模块shutil模块CSV文件处理ini文件处理序列化和反序列化pickle 库JSONMessagePack文件操作open函数open(file, mode='r', buffering=-1, enco...

2018-08-03 00:33:37 627

原创 python3_函数

函数参数参数默认值作用域闭包Enclosing递归Recursion匿名函数lambda解析式 和 生成器高阶函数, 柯里化, 装饰器装饰器Decorator函数参数可变参数 *args 接收若干个位置参数组成tuple, 参数个数可以为0**kwargs 接收若干个关键字参数组成dictkeyword only...

2018-08-02 17:33:51 137

原创 python3_内建函数介绍

id(obj) 返回obj唯一标识符,CPython返回内存地址 hash(obj) 返回obj的hash值 type(obj) 返回objd 类型 type(object) -> the object’s type type(name, bases, doct) -> a new type 返回一个新类, 元编程 isinstance(obj,cl...

2018-08-02 09:08:42 341

原创 GIT私服搭建及GIT的使用

搭建git私服安装软件git,percona数据库yum install gittar xvf Percona.tar yum install shared, server, clientps aux | grep mysql # 查看进程service mysql start chkconfig mysql onmysql_secure_installation # m...

2018-07-31 17:35:17 2274

原创 python3_标准库汇总, 简单使用

目录:subprocesstempfileuuidsimplejsoncollectionsdeque 双向队列namedtuple 命名元组defaultdictOrderedDictheapdrandom 模块functoolsinspect模块subprocessfrom subprocess import Popen, PIPE ...

2018-07-31 11:21:13 1900

原创 python3_简介和基本数据结构

Python简介和基本数据结构简介Interpreter 解释器 Bytecode 中间代码, Java、Python、C#需要被解释器编译成中间代码,运行在虚拟机上 函数式语言:古老的编程范式,应用在数学计算、并行处理的场景 python是动态的,强类型语言 弱类型语言, 经常隐式转换类型 ,C,C++,JavaScript 强类型语言, 很少隐式转换类型, 动态语言, ...

2018-07-31 11:16:47 229

原创 python3_安装和环境pyenv配置, Ipython简单使用

目录:安装和环境配置Ipython简单使用安装和环境配置开发环境Pyenv https://github.com/pyenv/pyenv 1. 安装Python编译依赖 yum -y install gcc make patch gdbm-devel openssl-devel sqlite-devel readline-devel zlib-devel ...

2018-07-31 10:54:49 759

原创 斐波那契数列类 python实现

实例可从一开始迭代,可调用,同时实现缓存,不用重复计算import timeclass Fibos: def __init__(self): self.items = [0] self.gen = self.fibos() def fibos(self, first=0, second=1): while True: ...

2018-05-12 18:01:11 1134

原创 二分法 python

def bisection_right(a, x): lo = 0 hi = len(a) while hi > lo: mid = (hi+lo)//2 if a[mid] > x: hi = mid else: # x >= a[mid] ...

2018-05-12 17:55:24 245

原创 python练习(13)——字典扁平化,组合总数,函数递归练习

# 有用的数据最后记录在target默认值中,返回def flatdict(dic, target=None, prefix=''): if target is None: target = {} for k, v in dic.items(): if isinstance(v, dict): flatdict(v, ta...

2018-05-01 20:05:00 627

原创 python练习12)——最长公共子串

# 两个字符串相对而行,取重合部分看重复情况# start:# s1 aaaaaaaa# s2 bbbbbbbb# end:# s1 aaaaaaaa# s2 bbbbbbbbdef taiLongestSubstring(s1, s2): """连个字符串左对齐,取最长的公共子串,子串索引也相同""" if len(s1) > l...

2018-05-01 18:19:31 405

原创 Base64 编码解码Python实现

Base64是网络上最常见的用于传输8Bit字节码的编码方式之一,Base64就是一种基于64个可打印字符来表示二进制数据的方法。编码的过程:将源数据三个字节三个字节分开,分别处理 3个字节是24Bit,平均分成4份,每一份6Bit,每一份前面补两位0,形成新的4个字节。不够4个,用零补齐,最后将无效的字节替换成b'='号 每一个新字节,对照Base64编码表,组成新的数据bytes...

2018-04-25 20:59:51 580

原创 python练习(11)——若干个数,组成若干位,无重复数字

# 题目:有四个数字:1、2、3、4,能组成多少个互不相同且无重复数字的三位数?各是多少?def nums(): nums = [] for i in range(1,5): for j in range(1,5): if j != i: for k in range(1,5): ...

2018-04-15 16:42:16 205

原创 python练习(10)——矩阵非常规打印

'''10、打印矩阵外圈1 2 6 73 5 8 134 9 12 1410 11 15 16打印顺序为1,2,6,7,13,14,16,15,11,10,4,3挑战题:打印矩阵元素1 2 6 7 153 5 8 14 16 4 9 13 17 2210 12 18 21 2311 19 20 24 25之字形打印结果为1,2,3,4,5,6,7,8...

2018-04-14 19:51:27 1171

原创 python练习(9)——练习题猴子桃子,7个数字组成的奇数。。。

# 题目:有n个整数,使其前面各数顺序向后移m个位置,最后m个数变成最前面的m个数,//m=3nums = [1,2,3,4,5,6,7,8,9,0]chnums = nums[3:]chnums.extend(nums[0:3])print(chnums)#第二种方法,移位m = 3for i in range(m): last = nums[-1] for j ...

2018-04-07 21:46:12 638

原创 python练习(8)——简单选择排序,列表解析式使用(格式化输出杨辉三角,九九乘法表)

# 简单选择排序法b = [3,4,2,1,6,4,6,7]for i in range(len(b)): maxindex = i for j in range(i+1,len(b)): if b[maxindex] < b[j]: maxindex = j if maxindex != i: b[i],...

2018-04-04 20:55:30 524

原创 python练习(7)——构建矩阵,反转矩阵

# 生成[[1,2,3],[4,5,6],[1,2,3],[4,5,6].......]lst = [[1,2,3],[4,5,6]]c = [lst.extend(lst) for j in range(3)] # 2**nd = [[1,2,3] if not i&1 else [4,5,6] for i in range(6)] #/2print(c)print(d...

2018-04-04 15:02:48 324

原创 python练习(6)——统计重复数和非重复数,列表,字典

#随机生成若干数字 统计重复数和非重复数,按顺序输出 ||例50个[100,200]的数import random#lst = [randome.randint(100,200) for i in range(50)] 同append,效率比乘法*一次开辟空间慢lst = [0]*50for i in range(50): lst[i] = random.randint(1...

2018-04-04 12:28:05 2160

原创 python练习(5)——列表,去重,冒泡法

 # 输入一个数字,输出每一位数字重复几次 ##数字的个数很有限(10个)# 列表也可以看作是一种字典,索引也可以记录信息,import randomn = random.randint(1,100000)print(n)counter = [0]*10for i in str(n): x = int(i) counter[x] += 1for i in r...

2018-03-31 21:24:32 260

原创 python练习(4)——打印杨辉三角

#杨辉三角,后面补1,中间计算累加次数n = 6triangle = []for i in range(n): row = [1] triangle.append(row) if i == 0: continue pre = triangle[i-1] for j in range(1,i): row.append(p...

2018-03-28 11:29:50 1350

原创 python练习(3)——菲波那切数列,求10万以内素数优化

# 斐波那契数列,a,b = b,a+bfirst = 0second = 1cnt = 2for i in range(101-2):    mid = first + second    cnt += 1    first = second    second = midprint(mid) # 素数# 求10万以内所有的素数,优化,筛法ceil(sqrt)开...

2018-03-25 10:57:29 281

空空如也

空空如也

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

TA关注的人

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