
编程
WilliamHuangSt
这个作者很懒,什么都没留下…
展开
-
Python设计模式
Python设计模式Python设计模式1. 创建型模式单例模式(Singleton Pattern)工厂模式(Factory Pattern)建造者模式Python设计模式1. 创建型模式单例模式(Singleton Pattern)主要作用:确保该类只有一个实例存在class Singleton(object): def __init__(self): pas...原创 2019-12-04 21:54:25 · 239 阅读 · 0 评论 -
pep8 命名规范
Naming Conventions 命名规范Python库的命名规范很乱,从来没能做到完全一致。但是目前有一些推荐的命名标准。新的模块和包(包括第三方框架)应该用这套标准,但当一个已有库采用了不同的风格,推荐保持内部一致性。7.1 Overriding Principle 最重要的原则那些暴露给用户的API接口的命名,应该遵循反映使用场景而不是实现的原则。7.2 Descriptiv...转载 2019-11-15 21:28:35 · 2597 阅读 · 0 评论 -
range函数详解
class range(start, stop[, step])range 构造器的参数必须为整数(可以是内置的 int 或任何实现了 index 特殊方法的对象)。 如果省略 step 参数,其默认值为 1。 如果省略 start 参数,其默认值为 0,如果 step 为零则会引发 ValueError。如果 step 为正值,确定 range r 内容的公式为 r[i] = start +...原创 2019-11-13 14:48:49 · 13583 阅读 · 0 评论 -
sublime text3 python补全括号
{ "keys": ["tab"], "command": "move", "args": {"by": "characters", "forward": true}, "context": [ { "key": "following_text", "operator": "regex_contains", "o...原创 2019-11-13 14:17:04 · 782 阅读 · 0 评论 -
Python3.9.0常用重点内置函数
重点内置函数abs(x)chr(i)enumerate(iterable, start=0)eval(expression[, globals[, locals]])filter(function, iterable)id(object)input([prompt])isinstance(object, classinfo)iter(object[, sentinel])len(s)locals(...原创 2019-11-12 14:03:39 · 1048 阅读 · 0 评论 -
多线程配合队列使用范例
import threadingimport queuedef do_work(num): num += 10 print(num)def worker(): while True: item = q.get() if item is None: break do_work(item) ...原创 2019-11-12 10:37:54 · 235 阅读 · 0 评论 -
找零问题
# 找零钱问题,已经零钱面额为1,5,10,20,50,100,求找零n所用零钱数最少的方案def change(money): changeList = [1, 5, 10, 20, 50, 100] giveChange = '' for change in changeList[::-1]: changeNum = money // change...原创 2019-11-11 14:21:56 · 211 阅读 · 0 评论 -
两个字符串的最长公共子序列
# 给定两个字符串str1和str2,返回两个字符串的最长公共子序列,例如:str1="1A2C3D4B56",str2="B1D23CA45B6A","123456"7,返回哪一个都行。str_a = "1A2C3D4B56"str_b = "B1D23CA45B6A"stra = "1ab2edasdadca"strb = "b1dc21ab4fdfdada"def findSt...原创 2019-11-11 13:39:42 · 856 阅读 · 0 评论 -
求矩阵最少(或最多)路径和(python实现)
1.递归方式求最短,最终状态即右下角f(v, i, j) = min(f(v, i - 1, j), f(v, i, j - 1)) + v[i][j]最长只需将min改为max即可import numpy as np# i:行# j:列# v:矩阵def f(v, i, j): if i == 0 and j == 0: return v[0][0]...原创 2019-11-11 00:21:01 · 507 阅读 · 0 评论 -
走台阶方式种数计算
N阶台阶,假设每次走一步或两步,计算共有多少种走法。以f(n)表示走N-n阶台阶有多少种方式n表示目前剩余台阶数首先计算最终状态(即走法少于2种的时候):最终状态为n0,即到达终点记一种走法当n1时,走法只有f(n-1),所以也可直接返回1中途每一台阶都有两种走法,所以有两个递归函数调用,以分支形式,最终每条分支到达终点都会增加1种走法返回,所以最先调用的函数会获得所有走法的记数de...原创 2019-11-10 22:49:34 · 2200 阅读 · 0 评论 -
w3cschool js脚本初级实战所有题目 解题方法(自做)
function reverseString(str) { // for(var i in x) return str.split('').reverse().join('');}function factorialize(num) { if (num == 1 || num == 0) { return 1; } return num...原创 2019-11-10 18:19:42 · 301 阅读 · 0 评论 -
python pygame实现飞机大战
#--coding:utf-8--'''My Function'''from mydata import *from myclass import *def hiteffect(ImagePath, x, y, w, h, Window): image = pygame.image.load(ImagePath).convert_alpha() screen = py...原创 2019-11-10 18:16:18 · 720 阅读 · 0 评论 -
腾讯面试题目记录
import sysflag=1flag=0if flag == 1 : inputlist=[] while True: line = sys.stdin.readline().strip() if line == '': break lines = line.split() for item in lines: ...原创 2019-11-10 18:13:19 · 391 阅读 · 0 评论 -
python学习代码(1)
from functools import reducedef add(*arg): # 将不定多个参数值求和 sum = 0 for x in arg: sum += x return sumdef addNumList(list1, list2): # 求多个列表值 return[(x + y) for x in list1 fo...原创 2019-11-10 18:10:34 · 147 阅读 · 0 评论 -
求6和9组成的最大字符串
# coding=utf-8import sysdef solution(num): # 代码可以写这里 num = str(num) newNum = [] flag = 0 for item in num: if flag == 0 and item == '6': item = '9' ...原创 2019-11-10 18:09:33 · 132 阅读 · 0 评论 -
求覆盖最短字符串
# coding=utf-8import sysdef lists_combination(lists, code=''): '''输入多个列表组成的列表, 输出其中每个列表所有元素可能的所有排列组合 code用于分隔每个元素''' try: import reduce except: from functools impor...原创 2019-11-10 18:08:45 · 171 阅读 · 0 评论 -
python高级特性复习
python 高级特性复习集合的推导式列表推导式,使用一句表达式构造一个新列表,可包含过滤、转换等操作。语法:[exp for item in collection if codition]print(['No.' + str(i) for i in range(1, 10) if i <= 3])字典推导式,使用一句表达式构造一个新列表,可包含过滤、转换等操作。语法:{key...原创 2019-11-10 18:02:12 · 112 阅读 · 0 评论 -
sublime text3自定义配色推荐(程序员)
先上效果,感兴趣的请继续往下阅读修改方式具体方式如下:ctrl+shift+p输入 package install输入 package resource viewer 选择并安装等待安装完后ctrl+shift+p输入 package resource viewer:open resource输入color选择default选择breakers会出现配色文件,可自行修...原创 2019-11-10 12:43:05 · 1602 阅读 · 1 评论 -
Python背包问题动态规划算法
import numpy as np# 背包问题# 第一阶段:递归式求解def package(capacity, index, weightList, valueList): if capacity <= 0 or index < 0: return 0 else: if weightList[index] <= c...原创 2019-11-10 00:41:29 · 639 阅读 · 0 评论 -
Sublime Text Python3 开发推荐设置及插件
Sublime Text Python开发推荐设置Sublime Text Python开发推荐设置Setting Userpackageanaconda个人推荐设置terminalSublime Text Python开发推荐设置仅供参考及保存本人设置Setting User{ "bold_folder_labels": true, "color_scheme": "Packages...原创 2019-11-09 14:12:15 · 1192 阅读 · 0 评论 -
Python动态规划解决数字三角形问题(兼纪录copy的一次坑)
Python动态规划解决数字三角形问题(兼纪录copy的一次坑)照例先上代码1import copylines = [ [1], [3, 2], [4, 5, 6], [8, 9, 8, 7], [7, 6, 5, 4, 3], [0, 10, 0, 0, 0, 5], [1, 2, 3, 4, 5, 6, 7], [8, ...原创 2019-11-08 01:51:34 · 955 阅读 · 0 评论 -
线程
线程现代操作系统提供了对单个进程中多条执行线索的支持,这些执行线索称为线程。线程是构成进程的可独立运行的单元,是进程内的一个执行流。线程与进程的比较在资源分配方面,进程是操作系统资源分配的基本单位。线程基本上不拥有自己的资源,只拥有一点在运行中必不可少的资源(如堆栈等)在CPU调度方面,线程是调度执行的基本单位在通信方面,由于多个线程共享同一内存地址空间,线程之间的通信犹如同一房间内的...原创 2019-11-07 11:25:39 · 390 阅读 · 0 评论 -
Python闭包
Python闭包先上代码def accumator(initialNumber=0, eachTimeAddMoreNumber=0): sum = initialNumber def inner_accumator(toAddNumber): nonlocal sum sum += toAddNumber + eachTimeAddMoreN...原创 2019-11-05 19:18:59 · 139 阅读 · 0 评论