首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Python圣诞帽

01 前段时间好多人@官方微信许愿说要给自己头像圣诞帽,总觉得不太可靠,不晓得最后是PS还是在微信小程序里搜索圣诞头像给自己戴,嘿嘿~ 之前在GitHub上看到有人用python给自己头像添加圣诞帽...将方便之后dlib安装)。...如下图所示: Step2: 打开anaconda3,即点击如下图所示图标: 打开后点击如下图所示内容: 出现下图所示终端: 在终端中依次输入pip install opencv_python...环境配置 04 在上述终端中输入: python Add_Santa_Hats.py 圣诞帽图片名 头像图片名 即可。...运行代码 05 (1)若想了解具体原理可参见源代码,我已经对源代码进行了详细注释; (2)若对处理结果不满意,可修改源代码中部分参数与公式,可修改部分我也在源代码中做了标记; (3)因为python3.5

1.5K100
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    python(leetcode)-66

    给定一个由整数组成非空数组所表示非负整数,在该数基础上一。 最高位数字存放在数组首位, 数组中每个元素只存储一个数字。 你可以假设除了整数 0 之外,这个整数不会以零开头。...看到题目觉得非常简单 只需要找到list最后一个下标位置使其一 即可。...需要考虑进位情况 重新思考: 笔者想到是先将数组数字转为十进制数字,然后一,接着按位取模得到每一位值。...思路:对每个值遍历判断,如果为9则变为0,并且继续遍历,如果为0到8则1操作,并且break退出判断 上代码(用时44ms)击败98% 1 class Solution: 2 def plusOne...(digits[-i]==9): #如果为9则变为0 10 digits[-i]=0 11 else: #如果1

    65530

    Python3中和”函数

    技术背景 其实如果没有专门去研究python一些内置函数的话,我们都没办法发现一些很神奇功能,即使是我们最熟悉pythonsum函数。不知道还有多少人,以为这只是一个只能用来做求和函数?...,我们可以使用python内置sum函数对该问题进行求解,这样在形式上就简便了很多: In [31]: sum(my_list,[]) Out[31]: [1, 2, 3, 4, 5, 6] 非常简单...当然,这个方法对于二维list是可以正常使用,可对于更加高维嵌套异形list,使用sum函数,是得不到我们想要效果: In [35]: my_list = [[1],[2,3],[4,5,[6...总结概要 如果我们遇到[[1],[2,3],[4,5,6]]这样一个python列表,想把他展平为一个一维列表,这个时候你会使用什么样方法呢?for循环?while循环?...其实python内置函数sum中简单支持了一下这样功能,使得我们可以更加简便把一个高维且长度不固定列表展平为一个规则一维列表。

    79420

    python 装饰器(二): 参数

    接上篇python 闭包&装饰器(一) 一、功能函数参数:实现一个可以接收任意数据加法器 源代码如下: def show_time(f): def inner(*x, **y): #...for i in a: sums += i print(sums) time.sleep(1) add(1, 2, 3, 4, 5) # 15 二、装饰器函数参数...:根据需求打印日志 源代码如下: def logger(flag=''): # flag 默认为空,这一层函数作用是应用标志位 def show_time(f): def...time.sleep(3) # 停留3秒 bar() 注意:@logger('true') 执行机制是:先执行 logger('true') 函数,然后返回 show_time 函数内存地址..., 所以 @logger('true') 就相当于 @show_time,两者区别就是 @logger('true') 要了一个变量flag, 之后装饰器函数里面就可以使用falg这个标志位了

    44720

    python 增运算符

    python 增运算符 博客分类: python python 这段code: Python代码 >>> i =1 >>> ++i >>> print i 1 很坑爹是吧,python...python 不使用 ++ 哲学逻辑:编译解析上简洁与语言本身简洁,就不具体翻译了 Python代码 >>> b = 5 >>> a = 5 >>> id(a) 162334512 >>> id...(b) 162334512 >>> a is b True 可以看出, python 中,变量是以内容为基准而不是像 c 中以变量名为基准,所以只要你数字内容是5,不管你起什么名字,这个变量 ID...是相同,同时也就说明了 python 中一个变量可以以多个名称访问 这样设计逻辑决定了 python 中数字类型值是不可变,因为如果如上例,a 和 b 都是 5,当你改变了 a 时,b 也会跟着变...,这当然不是我们希望 因此,正确增操作应该 a = a + 1 或者 a += 1,当此 a 增后,通过 id() 观察可知,id 值变化了,即 a 已经是新值名称

    8.2K10

    python函数注释,参数后面冒号:,

    python函数注释: def f(text:str,max_len:'int>0'=80) ->str: """这个是函数帮助说明文档,help时会显示""" return True "...max_len:'int>0'=80 ->str 是函数返回值注释。 这些注释信息都是函数元信息,保存在f.__annotations__字典中、 需要注意,python对注释信息和f....返回值形式是 -> int,annotation可被保存为函数attributes。...以上属于静态注释,还有一种方法叫做动态注释 动态注释原理,就是在函数中或者装饰器中动态增加 删除 更改 注释内容 f....__annotations__ 是一个字典,可以使用字典所有操作,这样就可以动态更改注释了 大多数情况,我使用是一下方法,进行注释说明 def foo(): """ This is function

    5K20

    Leetcode一 (java、python3)

    一 给定一个由整数组成非空数组所表示非负整数,在该数基础上一。 最高位数字存放在数组首位, 数组中每个元素只存储一个数字。 你可以假设除了整数 0 之外,这个整数不会以零开头。...python3: class Solution: def plusOne(self, digits: List[int]) -> List[int]: """ ​...range(len(digits)): num = num*10 + digits[i] return [int(i) for i in str(num+1)] ​ python3...可以把数组digits倒置,reversed(digits)然后逐项1,最后如果为0,则直接对数组下一项赋值1(python3数组可动态扩展)。最后返回倒置数组。 再就是如上转换成string方式。...先把数组转成一个数字,然后一,最后转换字符串逐个输出char字符并强制转换int型

    62820

    写go加载器壳免杀——过国内主流杀软

    将你shellcode放入你刚才定义接收函数 3. 解密shellcode 4....将你保护代码放入你定义函数之中 这里涉及go语言指针,简单说一下指针,可能讲会有些模糊。 指针是一个地址传递,地址传递会发生内存地址改变。 但是这个和值传递不同有所不同。...语言所在路径 cmd 使用 go build main.go 此时会编译生成一个main.exe (火绒会报毒 ) 05 壳 免 杀 免杀还是采用壳,upx可以使用但需要抹除特征码(对汇编不好师傅不太友好...这里还是采用 safe壳: 用法很简单: 将你exe 拖入之后就可以了 (这里选择默认壳模式就行了,当然如果懂汇编师傅可以尝试一下其它选项) 免杀效果:可过火绒和360。...2.查看生成木马: cat rev.hex 3.创建监听 4.加载你shellcode 找到你壳后exe,在 cmd中运行: main_se.exe + rev.hex文件内容 此时木马上线成功

    4.4K40

    python 变量锁_python字符串前面b

    2、全局解释器锁好处 1、避免了大量加锁解锁好处 2、使数据更加安全,解决多线程间数据完整性和状态同步 3、全局解释器缺点 多核处理器退化成单核处理器,只能并发不能并行。...同一时刻某个进程下某个线程只能被一个cpu所处理,所以在GIL锁下线程只能被并发,不能被并行。...只需要在对公共数据操作前后加上上锁和释放锁操作即可。...2、同步锁作用:为了保证解释器级别下自己编写程序唯一使用共享资源产生了同步锁。 三、递归锁和死锁 1、什么是死锁?...在Python中为了支持同一个线程中多次请求同一资源,Python提供了可重入锁。

    76610
    领券