随着圣诞的到来,想给给自己的头像加上一顶圣诞帽.如果不是头像,就加一个圣诞老人陪伴.   用Python给头像加上圣诞帽,看了下大概也都是来自2017年大神的文章:https://zhuanlan.zhihu.com/p/32283641 主要流程素材准备人脸检测与人脸关键点检测调整大小,添加帽子 用dlib的正脸检测器进行人脸检测,用dlib提供的模型提取人脸的五个关键点 # dlib人脸关键点检测器 predictor_path = "shape_predictor_5_face_landm…
随着圣诞的到来,想给给自己的头像加上一顶圣诞帽.如果不是头像,就加一个圣诞老人陪伴. 用Python给头像加上圣诞帽,看了下大概也都是来自2017年大神的文章: https://zhuanlan.zhihu.com/p/32283641 主要流程 素材准备 人脸检测与人脸关键点检测 调整大小,添加帽子 用dlib的正脸检测器进行人脸检测,用dlib提供的模型提取人脸的五个关键点 # dlib人脸关键点检测器 predictor\_path = "shape\_predictor\_5\_face…
[Spark][Hive][Python][SQL]Spark 读取Hive表的小例子$ cat customers.txt 1 Ali us 2 Bsb ca 3 Carls mx $ hive hive> > CREATE TABLE IF NOT EXISTS customers( > cust_id string, > name string, > country string > ) > ROW FORMAT DELIMITED FIELDS TERMI…
Python简单的CTF题目hash碰撞小脚本 import hashlib for num in range(10000,9999999999): res = hashlib.sha1(str(num).encode()).hexdigest() #sha1改为题目需要的算法 if res[0:5] == "903ed": #对hash的前五位为"903ed"的数字进行碰撞 print(str(num)) #等待执行结束 输出结果 break…
在打开文件的时候open(r'c:\....') 加r和不加''r是有区别的 'r'是防止字符转义的 如果路径中出现'\t'的话 不加r的话\t就会被转义 而加了'r'之后'\t'就能保留原有的样子 在字符串赋值的时候 前面加'r'可以防止字符串在时候的时候不被转义 原理是在转义字符前加'\' 例: s=r'\tt' print(s) Output: '\tt'   s='\tt' print(s) Output: '        t'     在Python的string前面加上‘r’, 是…
上传头像 我们需要实现的效果是:当我们点击默认头像,用户可以进行选择要上传的头像文件,其原理就是头像的img标签与文件input(file类型)框重合或者关联,可以通过如下两种方式进行实现: 方法一label关联 将img标签放在label标签中,通过label标签for与input标签的id关联,并将input标签隐藏,便可以实现我们需要的功能,代码如下: <label for="avatar">头像   <img id="></label&g…
import flask from flask import request #想获取到请求参数的话,就得用这个 server = flask.Flask(__name__) #吧这个python文件当做一个web服务 '): #satl是盐值,默认是123456 str=str+salt import hashlib md = hashlib.md5() # 构造一个md5对象 md.update(str.encode()) res = md.hexdigest() return res de…
在使用caffe的python接口时, 如下,如果标黄的部分不加上的话,两次调用该函数,后面的会将前面的返回值覆盖掉,也就是fea1与fea2相等,但是fea1_ori会保留原来的fea1 解决方法为使用fea1_ori或者加上标黄对的copy即可: def apply_model(image, net, filename): net.blobs['data'].data[...] = image output = net.forward() feat_vector = (net.blobs['…
001讲 0. Python 是什么类型的语言? Python是脚本语言以简单的方式快速完成某些复杂的事情通常是创造脚本语言的重要原则. 特性: 语法和结构通常比较简单 学习和使用通常比较简单 通常以容易修改程序的“解释”作为运行方式,而不需要“编译” 程序的开发产能优于运行性能 一个脚本可以使得本来要用键盘进行的相互式操作自动化.一个Shell脚本主要由原本需要在命令行输入的命令组成,或在一个文本编辑器中,用户可以使用脚本来把一些常用的操作组合成一组串行.主要用来书写这种脚本的语言叫做脚本语言…
Python绘制PDF文件 项目简介 这次项目很简单,本次项目课,代码不超过40行,主要是使用 urllib和reportlab模块,来生成一个pdf文件. reportlab官方文档 http://www.reportlab.com/docs/reportlab-userguide.pdf 我们看看这个网页上的原数据: http://www.swpc.noaa.gov/ftpdir/weekly/Predict.txt 代码: #-*- coding: utf-8 -*- # 1. 用于下载原…
最近在看<鲜活的数据:数据可视化指南>,学习一些数据可视化与数据分析的技术,本例是该书第一章的一个例子衍伸而来. 实例内容:从www.wunderground.com收集美国纽约州布法罗市(水牛城)2014年3月份每天最高气温,并导入Excel或WPS表格,制做成折线图. 工具准备:安装好的Python2.7,Beautiful Soup库(将其python文件放入Python库文件路径中) 步骤1:撰写Python程序.代码如下: # -*- coding: cp936 -*- import…
python 中全局变量和局部变量在使用过程中的一个容易出错的地方 什么是全局变量 python中,在函数外部声明的变量可以叫做全局变量. x = 10 def fn1(): pass fn1() 什么是局部变量 python中,在函数内部声明的变量通常情况下称之为局部变量,它的作用域也仅限在函数内部. x = 10 # 全局变量 def fn1() : y = 20 # 局部变量,只能够在函数内部中使用 fn1() # 调用函数 容易出错的一个点 在使用全局变量和局部变量的过程中,有一种情况十…
前言:有时候无聊看一些搞笑的段子,糗事百科还是个不错的网站,所以就想用Python来玩一下.也比较简单,就写出来分享一下.嘿嘿 环境:Python 2.7 + win7 现在开始,打开糗事百科网站,先来分析.地址:https://www.qiushibaike.com 一般像这种都是文本的话,查看源代码就可以看到内容了. 已经可以看到都是在一个class 为content 的div里面,这样就很简单了,直接上正则表达式来匹配就好了. <div.*?class="content"&…
因为代码量非常少,所以就叫“小框架”吧. 接口非常简陋,但是好处是适配POC脚本的时候很灵活,兼容性高,不需要任何研究成本. 简单来说,你按照自己的想法和习惯开发一个POC验证程序,它只要做到三点,即: 1. 接收一个目标地址字符串作为输入参数. 2. 定义一个名称为 "exploit" 的函数供小框架来调用. 3. 当验证成功时返回一个自定义的字符串作为标志. 就完全可以满足使用小框架的条件了. 针对以上条件再说一下细节. 小框架负责将字符串参数传递给POC程序,逻辑上讲最少要传递目…
1.id is详解 ID 在Python中,id是什么?id是内存地址,比如你利用id()内置函数去查询一个数据的内存地址: name = 'nba' print(id(name)) # 1585831283968IS is 又是什么那? == 是什么意思是那? is(身份运算)指的两边的内存地址是否相等,也就是是否是同一个地址 ==指的两边的数值是否相等 所以:如果内存地址相等,那数值一定相等,如果数值相等,内存地址不一定相等 2.代码块 在python中一切都是对象 Python的程序是由代…
1)python升级带来的yum异常:File "/usr/bin/yum", line 30 原因:这是因为yum采用Python作为命令解释器,这可以从/usr/bin/yum文件中第一行#!/usr/bin/python发现.而python版本之间兼容性不太好,使得2.X版本与3.0版本之间存在语法不一致问题.而CentOS 5自带的yum采用的是python2.4,当系统将python升级到2.6或3.0后,出现语法解释错误 解决办法: [root@jenkins-server…
一.is a = 100 b = 100 print(a == b) print(a is b) 执行输出: TrueTrue 查看内存地址,使用id函数 print(id(a)) print(id(b)) 执行输出: 24568395544802456839554480 内存地址,相当于门牌号 == 比较的是数值 is 比较的是内存地址 二.小数据池 只有数字和字符串类型 小数据池的作用,就是节省内存 数字: -5~256 这个范围指向的是同一内存地址字符串,是没有范围的. 字符串:1.如果含…
这是关于Python的第11篇文章,主要介绍下数据结构的3个小技巧. 排序: 使用sorted函数实现排序. sorted函数按照长短.大小.英文字母的顺序给每个列表的元素进行排序.这个函数经常在数据展示中使用,其中很重要的一点是sorted函数不会改变列表本身,相当于先复制列表然后做排序整理. list = [2,45,21,3,2,1] print(sorted(list)) # 数字默认从小到大排列 print(sorted(list,reverse = True)) # reverse,…
学过java的swing可能知道,在创建一个窗口的时候,窗口的左上角是一个咖啡图标 如下图所示: 在python中,tkinter模块生成的窗口左上角是一个:Tk字样的图标(Tk为tkinter的缩写) 如下图所示: 那么我们需要把Tk字样的图标换成我们自己的图标,应该怎么做呢? 看看运行效果: =========================================== 代码部分: =========================================== #python…
先看看游戏的运行效果: 看完游戏的运行情况,你可能对游戏有了一定了了解: #运行游戏后,玩家首先要进行语音的选择,1选择英语,2选择汉语,其他则默认选择英语 #根据玩家选择的语音,进入不同的语音环境 #游戏规则:玩家输入一个0-9的数字,系统根据玩家输入的数字,打印出数字的信息 # 如果玩家输入的数字范围不在0-9,则会打印出"Error!" #退出游戏:游戏会随着打印信息的完成提示退出游戏 代码部分: #运行游戏后,玩家首先要进行语音的选择,1选择英语,2选择汉语,其他则默认选择英语…
目录 1. id 和 == 2. 小数据池 3. 编码和解码 1. id 和 == id:id是一个内置的函数,可以查看变量存放的内存地址(实际上不是真正的物理地址,这里暂时这样理解),用于判断是变量否属指向了同一块内存地址 ==:== 可以用于判断两个变量的值是否相等,这个在之前的例子中也有用过 下面来看几个例子,以及具体的使用方法: In [1]: a = 'abc' In [2]: b = 'abc' In [3]: a == b Out[3]: True In [4]: a is b O…
人物头像的制作: 在场景中添加人物模型和环境模型 设置人物的layer为Player 在主摄像机的基础上,新建一个次摄像机并将摄像机镜头对准人物面部,调整至合适大小. 设置次摄像机 culling mask中只渲染Player层,修改背景色,将次摄像机设置为人物的子物体,这样次摄像机可以跟随人物持续渲染人物头像动画. 在project中创建一个render texture文件,将次摄像机的target texture指定为此render texture. 使用NGUI在2D模式下创建panel层…
1.pythone 获取系统时间 import datetime nowTime=datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')#现在 pastTime = (datetime.datetime.now()-datetime.timedelta(hours=1)).strftime('%Y-%m-%d %H:%M:%S')#过去一小时时间 afterTomorrowTime = (datetime.datetime.now()+date…
参考 廖雪峰的python教程:http://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000/001386832653051fd44e44e4f9e4ed08f3e5a5ab550358d000 代码: #!/usr/bin/python # import module import socket import io # create TCP object s = socket.socket(…
Python 是一个美丽的语言,可以激发用户对它的爱.所以如果你试图加入程序员行列,或者你有点厌倦C++,Perl,Java 和其他语言,我推荐你尝试Python. Python有很多吸引程序员的功能 ,它易学,面向对象,字节码编译,免费且开源.还有运行时检查.完整快速的支持,可以执行各种任务的扩展. 高效的Python 在这篇文章,我想强调一些 Python 可以节约时间并最大限度地提高生产力的方面.在做准备时,我咨询了几个 Pythonists,他们最节省时间的技巧是什么?答案在这里… 1.…
1 解包 所谓解包,就是将字典通过 ** 操作符转为 Key=Value 的形式,这种形式可以直接传给函数作为关键字参数. 说说适用的几种情况. 1.1 搜索拼接条件 当应用中使用类似 SQLAlchemy 的 ORM 形式读取数据的时候,不同搜索条件,传入给 ORM 的搜索参数也随之改变. 下面是图书表的部分数据(只展示了部分字段) +----+---------------+-------------------------+-------+ | id | category_name | b…
#!/usr/bin/env python #encoding: utf-8 import datetime def dateDiffInHours(t1, t2): td = t2 - t1 return td.days * 24 + td.seconds/3600 + 1 if __name__ == '__main__': t1 = datetime.datetime(2016, 3, 31, 0) t2 = datetime.datetime(2016, 6, 8, 2) print d…
有这样一个列表: s=list('abcdefg') 现在因为某种原因我们需要从s中踢出一些不需要的元素,方便起见这里直接以踢出所有元素的循环代替: for e in s: s.remove(e) 结果却是: In [3]: s Out[3]: ['b', 'd', 'f'] 多次示例后发现,这种remove方式保持着隔1删1的规律. 那么改一下代码看看出了什么问题: In [14]: i=0 In [15]: for e in s: ...: print("第"+str(i)+&qu…
变量值互换 a = 1 b = 100 # 变量值互换 a, b = b, a print('a:', a) print('b:', b) 输出结果: a: 100 b: 1 多个变量赋值 a, b, c = 1, 2, 3 print(a, b, c) 输出结果: 1 2 3 join()方法 使用join()方法可以将字符串或者列表元组,按照指定的间隔字符串合成一个新的字符串. string = 'Hello World' joined_string = '~'.join(string) d…
同一代码块的缓存机制 在python中一个模块,一个函数,一个类,一个文件等都是一个代码块. 机制内容:Python在执行同一个代码块的初始化对象的命令时,会检查是否其值是否已经存在,如果存在,会将其重用.换句话说:执行同一个代码块时,遇到初始化对象的命令时,他会将初始化的这个变量与值存储在一个字典中,在遇到新的变量时,会先在字典中查询记录,如果有同样的记录那么它会重复使用这个字典中的之前的这个值.所以在你给出的例子中,文件执行时(同一个代码块)会把i1.i2两个变量指向同一个对象,满足缓存机制…