def

Python 编码规范 Google Edtion

ε祈祈猫儿з 提交于 2020-08-20 01:14:35
styleguide Google Python Style Guide 1 Background Python is the main dynamic language used at Google. This style guide is a list of dos and don’ts for Python programs. To help you format code correctly, we’ve created a settings file for Vim . For Emacs, the default settings should be fine. Many teams use the yapf auto-formatter to avoid arguing over formatting. 2 Python Language Rules 2.1 Lint Run pylint over your code. 2.1.1 Definition pylint is a tool for finding bugs and style problems in Python source code. It finds problems that are typically caught by a compiler for less dynamic

openpyxl 读取多个excle中的数据并保存到List中

我们两清 提交于 2020-08-20 01:11:59
def excel_to_json(file_name): wb = load_workbook(file_name) all_data = defaultdict(list) for sheet_name in wb.sheetnames: rows = list(wb[sheet_name].rows) title = [i.value for i in rows[0]] for row in rows[1:]: data = [i.value for i in row] all_data[sheet_name].append(dict(zip(title, data))) return all_data 来源: oschina 链接: https://my.oschina.net/u/4414119/blog/4321405

万物皆可 Serverless 之关于云函数冷热启动那些事儿

给你一囗甜甜゛ 提交于 2020-08-20 01:04:48
本文带大家来了解一下云函数的冷热启动过程,以及面对云函数这种冷热启动模式,开发者需要注意哪些问题。 本文来自 Serverless 社区用户「乂乂又又」投稿 效果展示 云函数被第一次调用(冷启动) 云函数被多次连续调用(热启动) 云函数的冷、热启动模式 先跟大家讲下这里的云函数冷热启动模式是什么意思。 冷启动是指你在服务器中新开辟一块空间供一个函数实例运行,这个过程有点像你把这个函数放到虚拟机里去运行,每次运行前都要先启动虚拟机加载这个函数,这是比较耗时的一个过程,所以云函数需要尽量减少自身冷启动的次数。 热启动则是说如果一个云函数被持续触发,那我就先不释放这个云函数实例,下次请求仍然由之前已经创建了的云函数实例来运行,就好比我们打开虚拟机运行完这个函数之后没有关闭虚拟机,而是让它待机,等待下一次被重新触发调用运行,这样做的好处就是省去了给虚拟机「开机」的一个耗时环节,缺点是要一直维持这个虚拟机的激活状态,系统开销会大一些。 当然这里的云函数资源分配的问题并不需要我们操心,云函数的底层会通过算法自行调配。 在腾讯云云函数文档里的 简介 里有这么一段描述: 腾讯云云函数是腾讯云提供的 Serverless 执行环境。您只需编写简单的、目的单一的云函数即可将它与您的腾讯云基础设施及其他云服务产生的事件关联。 使用云函数时,您只需使用平台支持的语言(Python、Node.js、PHP

python模块

女生的网名这么多〃 提交于 2020-08-20 00:30:41
https://study.163.com/course/courseMain.htm?courseId=1006383008&share=2&shareId=400000000398149 (博主录制) (原创声明,转载引用需要指明来源) 模块概述 Python 模块(Module),是一个文件,用 .py 结尾。模块包含了 Python 对象定义和Python语句。模块能够有逻辑地组织 Python 代码段,把相关的代码分配到一个模块里能让开发人员的代码更好用,更易懂。模块能定义函数,类和变量,模块里也能包含可执行的代码。 下例是个简单的模块 simpleModule.py: # -*- coding: utf-8 -*- """ 最简单的模块 """ def PrintName(name): #定义一个函数 print("hello:",name)#输出信息 导入模块三种形式 只有导入模块后才能使用。导入有多种方法,每种方法对名称空间都有不同的影响。 模块引入形式主要有三种形式,用math模块为例,分别如下: (1) import math ( 推荐) 这是进行导入的最简单方法,通常建议这样做。您可以使用模块名称作为前缀来访问模块的名称空间。这意味着您可以在程序中使用与模块中相同的名称,但可以同时使用它们。当您导入多个模块时,就可以清晰辨别特定名称属于哪个模块。 import

requests---通过file_data方法请求yaml数据

佐手、 提交于 2020-08-19 23:04:53
 前面介绍了通过ddt的方法请求yaml数据,当时我们用的方法是直接ddt.data的方法去读取的,也非常简单,今天我们通过ddt方法中的file_data读取数据 file_data file_data属于ddt库中的一个方法,主要作用在安静这边理解就是读取json或者是yaml结尾的文件。 源码: def file_data(value): """ 方法装饰器添加到您的测试方法中。 应该添加到' ' unittest.TestCase ' '实例的方法中。 ' ' value ' '应该是相对于文件目录的路径 包含修饰过的' ' unittest.TestCase ' '。该文件 应该包含JSON编码的数据,可以是列表或 字典 对于列表,列表中的每个值对应一个 测试用例,值将连接到测试方法 的名字。 对于dict,键将用作名称的后缀 测试用例,值将作为测试数据提供。 """ def wrapper(func): setattr(func, FILE_ATTR, value) return func return wrapper 小试牛刀 这里还用上次的那个接口来做。详情见: requests---通过yaml+ddt封装测试数据 yaml文件 配置测试用例。 test01: - url: http: //apis.juhe.cn/simpleWeather/ query

Geekpwn 2020云端挑战赛 Noxss & umsg

爷,独闯天下 提交于 2020-08-19 22:31:11
作者:LoRexxar'@知道创宇404实验室 时间:2020年7月14日 前两天看了今年Geekpwn 2020 云端挑战赛,web题目涉及到了几个新时代前端特殊技巧,可能在实战中利用起来难度比较大,但是从原理上又很符合真实世界的逻辑,这里我们主要以解释题目为主,但是也探索一下在真实场景下的利用。 Noxss noxss提供了一个特殊的利用方式,就是当我们没有反射性xss的触发点时,配合1-click,哪怕是在真实世界场景并且比较现代前端安全的场景下,还有没有什么办法可以泄露页面内容呢? 从题目开始 首先我们从题目给的源码出发,主要的代码有两个部分 app.py from flask import Flask , request , jsonify , Response from os import getenv app = Flask ( __name__ ) DATASET = { 114 : '514' , 810 : '8931919' , 2017 : 'https://blog.cal1.cn/post/RCTF %202017% 20rCDN %20% 26%20noxss%20writeup' , 2019 : 'https://hackmd.io/IlzCicHXSN-MXl2JLCYr0g?view' , 2020 : 'flag{xxxxxxxx}' , }

ftp上传工具绿色,ftp上传工具绿色版如何使用?重要文件如何定时备份至ftp服务器?

安稳与你 提交于 2020-08-19 22:09:49
ftp传输工具简介 iis7服务管理工具是一款功能强大的FTP软件,具备极好的交互界面和强大的功能。它支持ftp的 定时上传下载 、 定时备份 、 自动更新 、批量上传下载、ftp多站点管理,在线编辑等功能。同时它还支持支持windows和linux系统服务器的批量操作和管理 ,并且它还可以作为VNC客户端和vps连接的工具,同样支持批量操作。软件体积小、免安装、功能多,非常推荐大家使用。 1. ftp传输工具使用教程 **下载地址: IIS7服务器管理工具 添加ftp服务器信息 操作步骤 第一步:点击主程序图中“上传下载”键; 第二步:点击“ Ftp”; 第三步:点击“添加”; 第四步:在弹出服务器信息框中填写Ftp信息,注意:FIP ip端口、账号、密码为必填项; 第五步:选择需要打开的FTP服务器; 第六步:点击打开,即刻见FTP效果图。 上传文件 操作步骤 第一步:选择需要上传的多个文件(按ctrl键多选),右键点击上传。 第二步:等待文件上传完成。 第三步:上传完成后,右侧窗口就可以查看上传成功后的文件或文件夹。 2.定时上传文件至ftp服务器教程 1.先在电脑上安装Python,勾选Add Python 3.7 to PATH,软件安装后会自动添加环境变量。 根据需要修改python代码。 # -*- coding:utf-8 -*- """ FTP常用操作 """

K-means聚类算法及python代码实现

雨燕双飞 提交于 2020-08-19 22:01:12
K-means 聚类算法( 事先数据并没有类别之分!所有的数据都是一样的 ) 1、概述 K-means 算法是 集简单和经典于一身的 基于距离的聚类算法 采用距离作为相似性的评价指标,即认为两个对象的距离越近,其相似度就越大。 该算法认为类簇是由距离靠近的对象组成的,因此把得到 紧凑且独立的簇作为最终目标。 2、核心思想 通过 迭代 寻找 k 个 类簇 的一种划分方案,使得用这 k 个 类簇 的均值来代表相应各类样本时所得的总体误差最小。 k 个聚类具有以下特点: 各聚类本身尽可能的紧凑,而各聚类之间尽可能的分开 。 k-means 算法的基础是 最小误差平方和准则 , 其代价函数是: 式中, μc(i) 表示第 i 个聚类的均值。 各 类簇 内的样本越相似,其与该类均值间的误差平方越小,对所有类所得到的误差平方求和,即可验证分为 k 类时,各聚类是否是最优的。 上式的代价函数无法用解析的方法最小化,只能有迭代的方法。 3、算法步骤图解 下图展示了对 n 个样本点进行 K-means 聚类的效果,这里 k 取 2 。 4、算法实现步骤 k-means 算法是将样本聚类成 k 个簇( cluster ),其中 k 是用户给定的 ,其求解过程非常直观简单,具体算法描述如下: 1) 随机选取 k 个聚类质心点 2) 重复下面过程直到收敛 { 对于每一个样例 i ,计算其应该属于的类:

Python--函数传参

♀尐吖头ヾ 提交于 2020-08-19 20:46:14
函数的一般参数(参数个数可确定): 1 # x、y、z 为形参 2 def func1(x, y, z): 3 print ( " x=%s " % x) 4 print ( " y=%s " % y) 5 print ( " z=%s " % z) 6 return 0 7 # 1、2、3为实参(此处的1、2、3为位置参数,按顺序传给形参,要求实参形参一一对应),实参的数量不得多于形参的数量 8 a = func1(1, 2, 3 ) 9 # x=1、z=3、y=2为关键字参数,与形参位置无关 10 b = func1(x=1, z=3, y=2 ) 11 # 当同时有位置参数和关键字参数时,位置参数不能写在关键字参数后面,且参数需要一一对应 12 c = func1(1, 2, z=3) # 正确示例 13 d = func1(x=1, 2, 3) # 错误示例 SyntaxError: positional argument follows keyword argument 14 e = func1(1, 2, x=2) # 错误示例 func1() got multiple values for argument 'x' 函数的默认参数: 1 # 此处的port和dbname参数均为默认参数,当调用conn函数未传递给port参数值时,使用默认值3306

一文搞懂Python函数(匿名函数、嵌套函数、闭包、装饰器)!

瘦欲@ 提交于 2020-08-19 17:43:22
Python函数定义、匿名函数、嵌套函数、闭包、装饰器 目录 Python函数定义、匿名函数、嵌套函数、闭包、装饰器 函数核心理解 1. 函数定义 2. 嵌套函数 2.1 作用 2.2 函数变量作用域 3. 闭包 3.1 特点 3.2 实例 4. 装饰器 4.1 形式和作用 4.2 装饰器函数写法 4.3 装饰器用法实例 5. 匿名函数 5.1 格式 5.2 使用原则 5.3 使用方式 6. python函数式编程 6.1 概念 6.2函数式编程的优缺点 6.3 map()、filter() 和 reduce()函数 函数核心理解 函数也是对象,可以把函数赋予变量 可以把函数当作参数,传入另一个函数中 可以在函数里定义函数,函数嵌套 函数的返回值也可以是函数对象,闭包 1. 函数定义 def name(param1, param2, ..., paramN): statements return/yield value # optional def是可执行语句,函数直到被调用前,都是不存在的,当程序调用函数时,def语句才会创建一个新的函数对象,并赋予其名字 主程序调用函数时,必须保证这个函数此前已经定义过,不然会报错 在函数内部调用其他函数时,函数间哪个申明在前、哪个在后无所谓,只要保证调用时,所需的函数都已经声明定义 python不用考虑输入的数据类型