自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 a-z对应成1-26,各个字母对应的数字相加

#方法一:ord()num = 0for letter in 'abc': num += ord(letter) - 96print(num) #方法二:映射while True: content = input('>>:') content = content.strip() if content == 'end':break ...

2018-09-26 14:59:06 11051

原创 期望线性时间的选择算法

期望线性时间的选择算法def select(list1,l,r,i):#i表示第i小的元素 if l == r: return list1[l] if l < r: x = random.randint(l,r) list1[r],list1[x] = list1[x],list1[r] key = list...

2018-08-03 18:00:26 463

原创 优化:快速排序

import randomdef quick(list1,l,r): if l < r: x = random.randint(l,r)#随机取一个数作为基数 list1[x],list1[r] = list1[r],list1[x] key = list1[r] i = l for j in ran...

2018-08-03 11:38:15 181

原创 超级:找最大值和最小值

#better——找最大值和最小值#①找最大值:总比较次数为n-1次def max(list1): max = list1[0] long = len(list1) for i in range(1,long): if list1[i] > max: max = list1[i] return maxli = [...

2018-08-03 10:29:19 251

原创 python中列表去重

li = [2,5,4,7,2,1,3,2,6,7]print('方法一列表追加'.center(40,'*'))list1 = []for i in li: if i not in list1: list1.append(i)print(list1)print('推导式实现'.center(40,'*'))list2 = [][list2.append(...

2018-08-01 14:30:14 1729

原创 insertion_sort插入排序原理

insertion_sort插入排序li = [3,9,4,0,8,1,5]类似玩牌:开始左手为空(或有1张牌)并且桌子上的牌面向下,每次从桌子上拿走一张牌并将其插入左手中正确位置,从右到 左将其与已在手中的每张牌进行比较进而找到正确位置(注:左手上的牌是排好序的)3 9...

2018-08-01 08:18:19 260

原创 用 python 实现 把一个数字组成的字符串转为整数,不使用 int

str1 = '03240'print('方法一(1)'.center(40,'*'))result1 = 0for i,m in enumerate(str1[::-1]): for n in range(10): if m == str(n): result1 += n*(10**i)print(result1)print('方法一...

2018-08-01 08:09:03 2898

原创 7月24:函数和匿名函数(lambda)的补充

'''--->函数与lambda表达式(匿名函数)的区别def 方法名(参数): 函数体f = lambda 参数: 要执行的逻辑f是对象引用的名称,不是函数的名称(lambda无函数名称)逻辑体里若是输出用print,若是需要返回值不需写returnf = lambda name:print('hello',name)f('bob')#调用lambda 或(lam...

2018-07-24 23:03:53 484

原创 快速排序原理

li = [12,1,13,8,16,2,6,11]                def ks(li,l,r)  l是开始索引,r 是结束索引j,i12  1  13  8  16  2  6                      取js = li[r]为11     j=l           for i in range(l,r)j      i                  ...

2018-07-24 07:53:16 299

原创 正则.....

#re.compile(r"模式")编译'''.match函数:.match 尝试从字符串的起始位置匹配一个模式,如果不是起始位置匹配成功的话,match()就返回none。.search方法:re.search 扫描整个字符串并返回(第一个) 成功的匹配。.match只匹配字符串的开始,如果字符串开始不符合正则表达式,则匹配失败,函数返回None;而.search匹配整个字符串,直到找...

2018-07-16 19:47:20 154

原创 线程,锁---生产者消费者

print('线程'.center(50,'-'))import threadingimport timeclass Mythread(threading.Thread): def __init__(self,name): # super().__init__()#初始化父类--1 # super(Mythread,self).__init__()#...

2018-07-16 19:46:07 119

原创 观察者模式和原型模式

print('观察者模式'.center(50,'-'))# publisher#发行者# observer#观察者# notify#通知# failed#失败'''try: self.observers.remove(observer)except ValueError: print('Failed to remove observer{}'.format(obs...

2018-07-16 19:24:54 175

原创 xml解析elementTree

# elementTree解析:# ElementTree 在 Python 中有两种实现 ,如果C语言实现的不能使用再使用纯Python实现的# 方法 作用# parse(xmlfile) 加载xml文件# fromstring(xmltext) 加载xml文件# findall() 获取指定的所有节点# find() ...

2018-07-16 19:06:14 193

原创 xml解析sax

# sax解析(事件驱动式解析,不会在内存中加载整个文档,只会根据自己编写的事件保存数据):# sax 解析需要继承ContentHandler并重写其中的方法,ContentHandler类中常用方法:# startDocument() self 文档启动时调用# endDocument() self 解析器到达文档结尾时调用# startElement() self,name:元素名...

2018-07-16 19:05:23 128

原创 xml解析dom

#dom(文档对象模型) :把解析的xml整个加载到内存,组织成object树。# dom解析案例:# from xml.dom.minidom import parse# domTree=parse("persons.xml")# print(domTree)# #得到根节点# root=domTree.documentElement;# print(root)# #得到需要的...

2018-07-16 19:03:38 145

原创 XML...

# 配置文件# 1.标签成对出现# 2.区分大小写# 3.标签要正确嵌套# 4.开始部分<?xml version="1.0" encoding="utf-8"?># 5.只能有一个根节点# 6.节点可以有属性#DTD(Document Type Definition):约束XML文件的节点# <!DOCTYPE books [# &l...

2018-07-16 19:02:05 179

原创 闭包和装饰模式,语法糖

#函数的定义,引用,调用# def func(a,b): #定义# print (a+b)# add = func #引用# add(1,4)#被执行,调用# func(4,6) #调用## def func(a,b):# return a+b# add1 = func(5,6)#调用func()函数,将函数的返回值赋值给add1,add1不能被调用,它引用了...

2018-07-13 12:39:04 148

原创 推导和生成器

#字典推导式dic = {'a':10,'b':59}r = [(k,v)for k,v in dic.items()]s = [m for m in dic.items()] #items()返回的时元组形式print(r,s)#列表推导式m = [x*x for x in range(10)]print(m)#将单词长度大于3的转为大写输出names = ['bob'...

2018-07-13 12:38:04 170

原创 异常和日志

# def li(list1):# m = list1[len(list1)]# def ll():# list1 = [1, 6, 7, 8, 9]# try:# li(list1)# except Exception as ex:# print(ex)# ll()#注意:finally程序一定会执行# de...

2018-07-13 12:37:20 103

原创 继承和单例模式

# 父类车类(品牌,颜色,方法:启动),子类小汽车(座位数)''' 知识点:1.== 在于测试两个被引用的对象是否有相同的值,is 在于测试两个变量是否引用了同一个对象 2.__repr__()方法与__str__()方法的区别:repr不用遍历输出,它返回的是列表形式 3.super().start()#调用父类方法:super().方法名(父...

2018-07-13 12:36:45 848

原创 简单工厂和classmethod

# 简单工厂class Milk: def m(self): print('Milk---------')class BananaMilk(Milk): def m(self): print('BananaMilk---------')class AppleMilk(Milk): def m(self): print('...

2018-07-13 12:35:57 142

原创 多态。。。

class Person(object): def __init__(self,name=None,age=None,sex=None): self.name = name self.age = age self.sex = sex def working(self): print('{0}是{1},他的年龄{2}岁'...

2018-07-13 12:34:58 77

原创 多个父类

class A: def __init__(self,a=None): self.a = a def play(self): print('A正在玩!')class B: def __init__(self,b=None): self.b = b def play(self): print('{0}正...

2018-07-13 12:34:16 248

原创 排序站点。。。。

#希尔排序def xier(list1): mylen = len(list1) bc = mylen // 2 while bc >= 1: for i in range(bc,mylen): while i >= bc and list1[i] < list1[i-bc]: l...

2018-07-13 12:32:51 397

原创 项目DVD

class Dvd: def __init__(self,serialNumber=None,state='可借',name=None,loanDate="",loanNumber=0): self.serialNumber = serialNumber self.state = state self.name = name ...

2018-07-13 11:03:08 188

原创 商场货品

class Goods: '''商品类''' def __init__(self,gName,gPlace,gPleased,gprice): self.gName = gName self.gPlace = gPlace self.gPleased = gPleased self.gPrice = gpricecl...

2018-07-13 11:01:54 300

原创 人机猜拳

import randomclass Person(object): #属性:name,score分数,出拳的名字cqname #方法:选择人物,出拳 name = None score = 0 cqname = None def __init__(self,name=None,score=0,cqname=None): self....

2018-06-26 09:26:48 226

原创 --sorted排序

print('简单实例'.center(40,'='))students = [('john', 'A', 15), ('jane', 'C', 12), ('dave', 'B', 10),('lili', 'B', 18)]# 第一种按姓名排序,从大到小sname = sorted(students,reverse = True)print(sname)# 第二种按等级排序,默认从...

2018-06-26 09:21:54 125

原创 --最大值最小值

# 找最大数和最小数print('--------max---------')def mymax(list1,flag=True): for i in range(len(list1)-1): if list1[i] > list1[i+1]: list1[i],list1[i+1] = list1[i+1],list1[i] i...

2018-06-26 09:20:55 249

原创 练---lambda

# goods = [# {"name": "电脑", "price": 1999},# {"name": "鼠标", "price": 10},# {"name": "游艇", "price": 20},# {"name": "美女", "price&qu

2018-06-26 09:18:15 171

原创 6.11练--函数

 # 函数:定义函数(函数名,参数,函数体(返回值)),调用函数# 参数:普通参数,默认参数(name=lili),可变参数(*args)--参数值可任意个返回元组形式,# 命名关键字参数,关键字参数(**kw)--参数值可任意个返回字典形式# 可变数据类型:list列表,dict字典,set()集合# 不可变数据类型:number,string,tuple元组# 变量作用域:...

2018-06-26 09:17:13 109

原创 6.11--10:检查传入字典的每一个value的长度,如果大于2,那么仅保留前两个长度的内容,

'''写函数,检查传入字典的每一个value的长度,如果大于2,那么仅保留前两个长度的内容,并将新内容返回给调用者。'''def fun1(n): for i,m in n.items(): m = str(m) if len(m) > 2: n[i] = m[0:2] print(n)dic = {'name'...

2018-06-13 14:00:26 4914

原创 6.11--9:检查获取传入列表或元组对象的所有奇数位索引对应的元素,

'''6、写函数,检查获取传入列表或元组对象的所有奇数位索引对应的元素,并将其作为新列表返回给调用者。'''def fun1(n): list1 = [] for i in range(len(n)): if 2*i+1 <= len(n): myodd = n[2*i+1] list1.append(my...

2018-06-13 13:58:05 3629

原创 6.11--8:写函数,检查用户传入的对象(字符串、列表、元组)的每一个元素是否含有空内容。

'''4、写函数,检查用户传入的对象(字符串、列表、元组)的每一个元素是否含有空内容。'''def fun1(n): if len(n) == 0: return True else: for i in n: if i == None or i == '': return True ...

2018-06-13 13:46:24 7160

原创 6.11--7:写函数,判断用户传入的对象(字符串、列表、元组)长度是否大于5

'''3、写函数,判断用户传入的对象(字符串、列表、元组)长度是否大于5'''def fun1(n): print('判断传入对象的长度是否大于5') if len(n) >= 5: return True else: return Falsecontent = input('Please enter some content:'...

2018-06-13 13:39:35 10959 1

原创 6.11--6:写函数,计算传入字符串中【数字】、【字母】、【空格] 以及 【其他】的个数

'''2、写函数,计算传入字符串中【数字】、【字母】、【空格] 以及 【其他】的个数'''# 13 回车# 32 空格# 48-57 数字是字符串的# 65-90 A-Z# 97-122 a-z# ord(a)a转为acsii# chr(b)b对应的字符为print('first'.center(40,'='))def fun1(str1): dig = 0 ...

2018-06-13 10:53:18 3543

原创 6.11--5:动态生成字典

'''现有一个列表li = [1,2,3,’a’,’b’,4,’c’],有一个字典(此字典是动态生成的,你并不知道它里面有多少键值对,所以使用dic={}模拟此字典);现在需要完成这样的操作:如果字典中没有‘k1’这个键,那就创建这个‘k1’键和其对于的值(该键对应的值设置为空列表),并将列表li中的索引为奇数对应的元素,添加到‘k1’这个键对应的空列表中。如果该字典中有‘k1’这个键...

2018-06-13 10:52:04 1823

原创 6.11--4:购物车

'''4.要求用户输入总资产,例如:2000 显示商品列表,让用户根据序号选择商品,加入购物车 购买,如果商品总额大于总资产,提示账户余额不足,否则,购买成功。附加:可充值、某商品移除购物车'''# 变量的含义:# sum是累计金额,car是购物车,asset是资产,balance是余额,choose是选择的商品编号,# num是移除的商品数量def fun1(dic): ...

2018-06-13 10:50:15 195

原创 6.11--3:输出商品列表,用户输入序号,显示用户选中的商品商品 li = ["手机", "电脑", '鼠标垫', '游艇']

# 3.输出商品列表,用户输入序号,显示用户选中的商品商品 li = ["手机", "电脑", '鼠标垫', '游艇']def fun1(list1): for arg in list1: myindex = list1.index(arg) print(myindex,arg) list2 = [] while True: ...

2018-06-13 10:48:19 2763

原创 6.11-2: 查找列表中元素,移除每个元素的空格,并查找以 a或A开头 并且以 c 结尾的所有元素。

# 查找列表中元素,移除每个元素的空格,并查找以 a或A开头 并且以 c 结尾的所有元素。# li = ["alec", " aric", "Alex", "Tony", "rain"]print('first'.center(40,'-'))import redef fun(li): mylist = [] for i in li: resul...

2018-06-13 10:40:45 6188

空空如也

空空如也

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

TA关注的人

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