- 博客(18)
- 收藏
- 关注
原创 python经典面试题(中位数)
写一个函数 find_median(l) 计算列表中的中位数,如果列表中的元素个数是偶数,则返回中间那两个数值的平均值例如:find_median([3,5,7])则返回5 find_median([3,5,7,9]) 则返回6def find_median(lst): n = len(lst) if n < 1: return None...
2019-10-10 10:56:36 385
原创 python经典面试题(斐波那契)
斐波那契数列,又称黄金分割数列,从第三项开始,每一项都等于前两项之和F0 = 0F1 = 1F2 = Fn-1 + Fn-2请写一个函数find_mth_fibo(n) 在斐波那契数列里返回第N个数值 如find_mth_fibo(3) 则返回数值2 find_mth_fibo(10)则返回 55def find_mth_fibo(n): if n == 1: ...
2019-10-10 10:44:21 506
原创 python经典面试题(判断是否质数)
请写一个函数,输入一个正整数判断是否为质数,如果是返回True 否则为False ,要求不能使用库函数,且函数名应为is_prime(n)def isPrime(n): if n<= 1: return False for i in range(2,n ): if n % i == 0: return False...
2019-10-10 10:30:15 1034
原创 python经典面试题求解
请写一个函数,输入一个字符串,查找字符串中的所有电话号码并生成列表返回,在这个问题中,电话号码的定义为由 3 个数字 1 个破折号,3 个数字,1 个破折号和 4 个数字如(123-123-1234)组成的连续字符例如:如果给定输入为“感谢您与我们联系,客户服务请拨打123-123-1234” 如果有其他疑问,请拨打 456-456-4567 该函数返回["123-123-1234","4...
2019-10-10 10:02:44 252
原创 python-----基数排序详解
今天简单的说下基数排序,基数排序比较特殊,他不用元素之间进行比较,也不用元素之间交换位置,你只需要堆元素进行分类就可以了,这个也恰巧就是基数排序的魅力。基数排序思想: 基数排序是桶排序的一种扩展,将整数按位数分割成不同数字,然后按照每个位数分别比较过程:1.分配:先从个位开始,根据位值(0-9)分别放到0-9号桶中,比如53 个位为3 ,我们就把53放入到3号桶中2.收集:...
2018-12-12 20:36:03 405
原创 python------桶排序详解
今天闲来无事,写一写桶排序。 首先要申明一下,桶排序是非常浪费空间的,比如需要排序的范围在0-2000之间, 需要排序的数是[3,9,4,2000], 同样需要2001个空间,所以桶排序慎用,但是为什么还要说,因为他也是排序算法之一啊,应该给点尊重,并且学完桶排序理解了也有助于理解基数排序。 那么首先理解下桶排序的工作原理: 他的工作原理就是将要排序大的数组分到...
2018-12-05 17:06:32 1149 1
原创 python-----selenium淘宝模拟登陆(跳过滑块移动)
from selenium import webdriverfrom selenium.webdriver.support.wait import WebDriverWaitfrom time import sleepclass taobao_infos: def __init__(self,url): self.url = 'https://login.taob...
2018-11-29 14:24:14 8646 8
原创 Python---快速排序详解
首先说一点官方的话,快排思想什么的思想:选取一个元素做为关键数据(一般选择第一个元素),然后将所有比他小的数都放在他前面,所有大于等于他的数都放到他的后边,作为一个快速排序的过程。当然这个思想要是看不懂,也不要问我,因为我也没看。个人总结的片面的快排思想就是:把基准值(也就是key值)移动到中间,这个中间就是左边都是小于key值的,右边都是大于key值的,然后key值左边的重新递归,k...
2018-11-28 14:55:49 648
原创 MVC和MTV框架模式的区别
说到框架模式我们有必要简单的说下设计模式,了解下设计模式这个概念,因为有人对设计模式和框架模式的概念经常混淆设计模式: 是一套被反复使用,多数人知道并经过分类的代码设计经验总结,是为了解决一些通用性问题的 目的:重用代码并保证代码的可靠性 设计模式分类:单例,抽象工厂 等等 23种模式 一句话总结:解决某一些特殊问题的一种思想和...
2018-11-21 15:48:56 5120 1
原创 python面向对象----函数重写
函数重写 定义:在自定义类内添加相应的方法,让自定义的类生成的对象(实例)像内建对象一样进行内建的函数操作对象字符串函数重写 repr(obj) 返回一个能代表对象的表达式字符串 eval(repr(obj)) == obj str(obj) 通过给定对象返回一个字符串class MyNumber: def __init__(self, v...
2018-11-20 17:34:49 387
原创 python面向对象-------多继承
多继承的定义 指一个子类继承两个或两个以上的父类 1.一个子类继承多个父类,父类中的方法可以同时被继承下来 2.如果两个父类有同名的方法,在子类中又没有覆盖此方法时,调用结果难以确定 3.多继承的缺陷,名字空间有冲突#无方法名覆盖情况class Car: def run(self, speed): ...
2018-11-20 13:31:42 186
原创 python面向对象编程-----多态
多态的定义:在继承关系类中,调用父类对象的方法,实际能调用子类覆盖版本的方法 多态调用的方法与对象有关,不与类型有关 python的全部对象都只有动态,没有静态(c++,java)对上述话术的解析: 多态可以理解为多种状态,可以理解为一个人有多种状态,在学习函数的过程中,我们发现在调用函数的时候我们永远调用的是唯一的函数,但是我们了解了继承和派生就不一样了,多态就是在继承派生...
2018-11-15 17:23:23 204
原创 python面向对象-------封装
说到封装我们来先了解下定义: 指的是隐藏类的细节实现,让使用者不关心这个细节 目的是让使用者尽可能的减少对实例变量(属性,方法)进行操作 上面这两句怎么理解呢,好比你买了辆车,你能操作的东西只有油门,刹车,方向盘之类的,实际上车的实现可能有上万 个零件,每个零件都有不同的作用,那么有些零件是给维修人员用的。其实汽车给你的时候已经就是封装好的,让你用的 ...
2018-11-15 10:57:48 203
原创 tornado--------一个简单的服务器
import tornadofrom tornado.httpserver import HTTPServerfrom tornado.ioloop import IOLoopfrom tornado.web import Application, RequestHandler#用来响应用户请求,如果用户以get方式发起请求那就用get,如果是post请求就用post方法class ...
2018-07-19 16:43:28 329
原创 同步互斥
要了解同步互斥先了解几个关于资源的概念,为什么会出现同步互斥,大多数是因为我们要对某一个资源进行争夺。在进程中出现的情况不多,多数是在进程中出现的,看下如如上图所示,现在有两个进程分别是进程A和进程B,还有一个资源C,A想使用这个资源,B进程也想使用这个资源(前提条件是A和B都能使用这个资源)现在的情况是A进程和B进程都要使用C资源,A进程往资源里添加一个数字5,要使用这个5,B进程往资源里添加一...
2018-07-13 13:54:47 6886 1
原创 进程间的通信----------共享内存
1.定义 共享内存时最简单的通信方式,他允许多个进程访问相同的内存,一个进程改变其中数据后,其他进程可以看到数据的变化2.画图理解 已经有两个进程A和B,在内存中开辟一个空间为C,C就是共享内存,进程A把消息传入到共享内存C中,进程B及时接收了,那么你收到的就是进程A传输的消息,如果进程B没有收取的话,进程A第二次把消息传入到共享内存C中,第二次传入的消息就会覆盖掉第一次...
2018-07-06 16:13:13 414
原创 python进程间的通信方式--------管道
管道 先画一幅图帮助大家理解下管道的基本原理 现有2个进程A和B,他们都在内存中开辟了空间,那么我们在内存中再开辟一个空间C,作用是连接这两个进程的。对于进程来说内存空间是可以共享的(任何一个进程都可以使用内存,内存当中的空间是用地址来标记的,我们通过查找某一个地址就能找到这个内存)A进程可以不断的向C空间输送东西,B进程可以不断的从C空间读取东西,这就是进程间的通信 ...
2018-07-04 15:48:09 8482 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人