def

189. 旋转数组

陌路散爱 提交于 2020-11-21 11:49:57
代码一: 1 class Solution(object): 2 def rotate(self, nums, k): 3 """ 4 :type nums: List[int] 5 :type k: int 6 :rtype: None Do not return anything, modify nums in-place instead. 7 """ 8 nums[:] = nums[-k%len(nums):] + nums[0:-k%len(nums)] 代码二: 1 class Solution(object): 2 def rotate(self, nums, k): 3 """ 4 :type nums: List[int] 5 :type k: int 6 :rtype: None Do not return anything, modify nums in-place instead. 7 """ 8 while k > 0: 9 nums.insert(0, nums.pop()) 10 k -= 1 来源: oschina 链接: https://my.oschina.net/u/4305580/blog/3300079

3分钟手把手带你搭建基于selenium的自动化框架

放肆的年华 提交于 2020-11-21 10:31:00
1 、什么是selenium Selenium 是一个基于浏览器的自动化工具,它提供了一种跨平台、跨浏览器的端到端的web自动化解决方案。Selenium主要包括三部分:Selenium IDE、Selenium WebDriver 和Selenium Grid: Selenium IDE:Firefox的一个扩展,它可以进行录制回放,并可以把录制的操作以多种语言(例如java,python等)的形式导出成测试用例。 Selenium WebDriver:提供Web自动化所需的API,主要用作浏览器控制、页面元素选择和调试。不同的浏览器需要不同的WebDriver。 Selenium Grid:提供了在不同机器的不同浏览器上运行selenium测试的能力 2 、自动化测试框架 一个典型的自动化测试框架一般包括用例管理模块、自动化执行控制器、报表生成模块和日志模块等,这些模块之间不是相互孤立的,而是相辅相成的。 下面来介绍下每个模块的逻辑单元: 用例管理模块 用例管理模块包括用例的添加、修改、删除等操作单元,这些单元也会涉及到用例书写的模式,测试数据的管理、可复用库等 自动化执行控制器 控制器是自动化用例执行的组织模块,主要负责以什么方式去执行用例。比较典型的控制器有用户图形界面(GUI)和“commandline+文件”两种。 报表生成模块

Python--Seaborn绘图和可视化--基本语法

痴心易碎 提交于 2020-11-21 09:35:52
  博客地址: http://www.cnblogs.com/yudanqu/   Seaborn是对matplotlib的extend,是一个数据可视化库,提供更高级的API封装,在应用中更加的方便灵活。下面我简单介绍一下他的用法,实际应用的时候,可以直接从文档中查找这个库,这时候使用就很快捷了。 提要:1、直方图和密度图    2、柱状图和热力图    3、设置图形显示效果    4、调色功能   老样子,首先将使用它所需要的库导入进来,当然,其中包括numpy之类的是为了演示它的功能才导入的,大家要先理解一下每个库的作用。 1 import numpy as np 2 import pandas as pd 3 import matplotlib.pyplot as plt 4 from pandas import Series,DataFrame 5 import seaborn as sns 1、直方图和密度图   如果在交互式环境中,可以通过 %matplotlab 来解决每次通过 plt.show() 来显示图像(本人在ipython中,貌似jupyter中%matplotlib inline等等) # matplotlib 1 s1 = Series(np.random.randn(1000)) # 生成1000个点的符合正态分布的随机数 2 plt.hist(s1

15行Python 仿百度搜索引擎

陌路散爱 提交于 2020-11-21 09:33:15
开发工具:PyCharm 开发环境:python3.6 + flask + requests 开发流程: 1. 启动一个web服务 from flask import Flask app = Flask( __name__ ) if __name__ == ' __main__ ' : app.run(host = ' 127.0.0.1 ' , port=6666) 2. 增加app.route装饰器 from flask import Flask app = Flask( __name__ ) @app.route( ' / ' ) def index(): return ' Hello World ' if __name__ == ' __main__ ' : app.run(host = ' 127.0.0.1 ' , port=5000) 3. 增加index.html <! DOCTYPE html > < html lang ="en" > < head > < meta charset ="UTF-8" > < title > 仿百度搜索 </ title > < style type ="text/css" > .align-center { position : fixed ; left : 30% ; top : 30% ; margin-left :

Python3 魔法方法:描述符(property的实现原理)

痴心易碎 提交于 2020-11-21 07:45:40
1、描述符 用一个类来描述另一个类的属性,而描述这个属性的类必须实现__get__ __set__ __delete__ 其中一个魔法方法,那么这个描述属性的类被称为描述符 简而言之,描述符就是将某种特殊类型(包含__get__ __set__ __delete__)的类指派给另一个类的属性 2、魔法方法 __get__(self,instance,owner) # owner 是包含描述符的类, instance 是包含描述符的类实例化的对象 用于访问属性,返回属性的值 __set__(self,instance,value) 用于属性分配操作中调用,不返回任何值 __delete__(self,instance) 定义描述符值被删除的行为,不返回值 例子 :定义一个温度类,使用描述符,实现摄氏度和华氏度的任意转换 class Celsius: def __init__ (self,value=26.0 ): self.value = value def __get__ (self,instance,owner): # print(self,instance,owner) return self.value def __set__ (self,instance,value): self.value = value class Fahrenheit: def __get__

django 实现linux运维管理平台

孤人 提交于 2020-11-21 07:18:29
概述 使用django实现一个linux运维管理平台,可以实现注册登录,机器管理 ,服务器批量操作,服务器性能监控。 详细 代码下载: http://www.demodashi.com/demo/11242.html 一、准备工作 1、需要准备什么环境 我是在自己的云服务上编写和运行的,centos7.2的环境,python是系统自带的python2.7.5,django安装的1.8.5版本的。数据库使用的mysql5.6版本的,rrdtool版本是rrdtool-1.4.8。 2、本例子实现什么功能 ①、用户管理 ②、资产信息添加和展示 ③、服务器性能监控 ④、服务器批量管理 ⑤、日志管理 ⑥、经验总结编辑和展示 3、django工作原理图: 4、运维管理平台的功能模块图: 5、功能模块介绍: (1)用户登录注册模块 用户登录注册模块包含注册、登录和注销登录的功用。这个模块主要是负责用户注册和登录运维管理系统,用户通过点击注册按钮,页面会跳转到注册页面上,用户按照页面的输入提示框,输入相应的信息完成注册,当用户输入的用户已经被注册了,那么这个时候系统会做出判断,并且给出用户提示,如果注册的用户,之前并没有注册,那么这个时候可以成功注册,并且会有提示给用户。这个时候,用户能够点击登录按钮跳转到登录页面,使用注册成功的账号和密码完成登录操作。 (2)Web页面执行Linux命令

使用itchat进行自动微信聊天

╄→尐↘猪︶ㄣ 提交于 2020-11-21 07:17:30
import itchat def we_chat(message): # enableCmdQR=2用于linux中显示二维码,hotReload=True退出程序后暂存登录状态 itchat.auto_login(hotReload= True,enableCmdQR =2 ) boom_remark_name = input( ' 好友备注名称: ' ) # message = input('输入你要轰炸的内容,按回车键开始轰炸') boom_obj = itchat.search_friends(remarkName=boom_remark_name)[0][ ' UserName ' ] itchat.send_msg(msg =message, toUserName= boom_obj) print ( ' 发送成功! ' ) we_chat( ' 你好) 来源: oschina 链接: https://my.oschina.net/u/4293290/blog/3424111

支付宝沙箱测试代码

主宰稳场 提交于 2020-11-21 06:54:38
首先来张图镇一下: 可惜啊,这些都是假的,要是真的我就不用写这些东写了,接下来就教你们如何优雅的装逼 要装好这个逼,不,要实现这个功能当然离不开支付宝了 首先登陆支付宝,进入如下页面: 申请公钥,然后就可以各种配置 接下来在手机下载沙箱版钱包,就可以正常使用了 你会发现你的余额成了几千万,我去,这样是不是就不用学习了啊, 不过这些钱只能用作测试,实际是消费不了的,接下来就看代码了 view视图; from django.shortcuts import render, redirect, HttpResponse from utils.pay import AliPay import json import time def ali(): # 沙箱环境地址:https://openhome.alipay.com/platform/appDaily.htm?tab=info app_id = " 2016091100483099 " # POST请求,用于最后的检测 notify_url = " http://127.0.0.1:8804/page2/ " # GET请求,用于页面的跳转展示 return_url = " http://127.0.0.1:8804/page2/ " merchant_private_key_path = " keys/app_private_2048

web框架之Django(python3入门)

北城以北 提交于 2020-11-21 06:52:40
一、初识Django Django 是一个web框架 web框架的本质 - web框架的本质就是一个socket服务端(帮你处理了socket,让你只需要专注于逻辑处理) - 符合wsig协议的web服务器 b /s架构:浏览器---服务器,本质也是c/s架构 二、HTTP协议 http请求协议: 请求首行: 请求的方法 空格 请求地址 空格 请求协议 GET /index HTTP/1.1 \r\n 请求头: (key:value的形式展现) ' Connection: keep-alive\r\n Pragma: no- cache\r\n Cache -Control: no- cache\r\n Upgrade -Insecure-Requests: 1 \r\n User -Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.121 Safari/537.36 \r\n Accept: text /html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8 \r\n Accept - Encoding:

Python编程核心内容 ---- Function(函数)

家住魔仙堡 提交于 2020-11-21 06:19:09
   Python版本:3.6.2 操作系统:Windows 作者:SmallWZQ    截至上篇随笔 《Python数据结构之四——set(集合)》 ,Python基础知识也介绍好了。接下来准备干件“大事”。   什么“大事”呢?下面将要介绍Python编程的核心内容之一——函数。   对于Python编程,函数的重要性不言而喻。 重要的事情讲三遍:函数实在是太重要,太关键了 。 引入函数    之前,我们编写程序遵循的原则:根据业务逻辑从上到下实现功能,其往往用一长段代码来实现指定功能,开发过程中最常见的操作就是粘贴复制,也就是将之前实现的代码块复制到现需功能处。这种编程方式虽然可以应付一般性问题,但是不能对付大多数问题。这不,下面就来个例子。 1 r1 = 12.3 2 r2 = 9.1 3 r3 = 64.21 4 s1 = 2 * 3.14 * r1 5 s2 = 2 * 3.14 * r2 6 s3 = 2 * 3.14 * r3    圆是个神奇的图形。特别是π,它让人类陷入无限的遐想。OK,回归正题。为了求圆的周长,我们需要引入公式: 周长 = 2 * π * r (半径) 。看到这儿,某些读者可能会有疑惑:这跟函数有什么关系,之前的方式依然适用。是的,这的确是可以的,但这很麻烦,太重复啦。那如果现在需要把 π 更改为 3.1415926535 ,那该怎么办呢