![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
python
软件测试进阶中
平安喜乐
展开
-
python随机产生手机号码
import randomdef create_phone(): #第二位数 second = [3, 4, 5, 7, 8, 9][random.randint(0, 5)] #第三位数 third = { 3: random.randint(0, 9), 4: [5, 7, 9][random.randint[0, 2]], 5: [i for i in range(10) if i != 4][random.randint(0, 8)], 7: [i for i in ra.原创 2021-03-11 15:26:38 · 2514 阅读 · 1 评论 -
如何用Python实现excel下拉列表的功能
import openpyxlimport xlsxwriterclass DropDown(): def write_with_dropdown(self, book_name, sheet_name="Sheet1"): #官网https://xlsxwriter.readthedocs.io/ 写入下拉列表 workbook = xlsxw...原创 2019-11-26 17:01:14 · 13029 阅读 · 3 评论 -
使用redis+celery异步发送邮件
环境:centos7+django2+redis+celery一、首先安装redis和celery.pip install celerypip intsall redispip install django-redis启动service redis start | systemctl start redis 编辑redis配置文件vim /etc/redis.c...原创 2019-11-26 14:04:07 · 1024 阅读 · 1 评论 -
五大算法回顾:分治、动态规划、贪心、回溯、分支限界
一、分治算法 基本概念 字面上的解释是“分而治之”,就是把一个复杂的问题分成两个或更多的相同或相似的子问题,再把子问题分成更小的子问题……直到最后子问题可以简单的直接求解,原问题的解即子问题的解的合并。 分治法的设计思想是:将一个难以直接解决的大问题,分割成一些规模较小的相同问题,以便各个击破,分而治之。 分治策略是:对于一个规模为n的...原创 2019-02-19 14:09:18 · 574 阅读 · 0 评论 -
LeetCode用python实现求众数
给定一个大小为 n 的数组,找到其中的众数。众数是指在数组中出现次数大于 ⌊ n/2 ⌋ 的元素。你可以假设数组是非空的,并且给定的数组总是存在众数。示例1:输入: [3,2,3]输出: 3示例2:输入: [2,2,1,1,1,2,2]输出: 2二、实现思路计算出每个数字出现的次数并存入字典 遍历字典求出出现次数大于len(nums)//2三、源码# ...原创 2019-01-04 17:06:25 · 851 阅读 · 0 评论 -
LeetCode使用python实现字符串相乘
给定两个以字符串形式表示的非负整数 num1 和 num2,返回 num1 和 num2 的乘积,它们的乘积也表示为字符串形式。示例1:输入: num1 = "2", num2 = "3"输出: "6"示例2:输入: num1 = "123", num2 = "456"输出: "56088"num1 和 num2 的长度小于110。 num1 和 num2 只原创 2018-12-29 15:53:03 · 601 阅读 · 0 评论 -
LeetCode用python实现删除排序数组中的重复项
给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。示例1:给定数组 nums = [1,1,2], 函数应该返回新的长度 2, 并且原数组 nums 的前两个元素被修改为 1, 2。 你不需要考虑数组中超出新长度后面的元素。示例2:...原创 2018-12-28 16:41:12 · 395 阅读 · 0 评论 -
LeetCode使用python实现有效的括号
给定一个只包括 '(',')','{','}','[',']' 的字符串,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。 左括号必须以正确的顺序闭合。注意空字符串可被认为是有效字符串。实例1:输入: "()"输出: true实例2:输入: "()[]{}"输出: true实例3:输入: "(]"输出: false实例4:...原创 2018-12-27 17:02:33 · 510 阅读 · 0 评论 -
python实现链表的增删改查操作
# _*_ coding:utf-8 _*_''' @author:xianyt @date:2018/ @func:用python实现链表操作'''class Node(object): ''' data:节点保存的数据 _next:保存下一个节点对象 ''' def __init__(self, data, pnext=N...原创 2018-12-10 11:03:47 · 1642 阅读 · 0 评论 -
selenium登录知乎案例
# _*_ coding:utf-8 _*_''' @author:xianyt @date:2018/ @func:'''from selenium import webdriverimport timebrowser = webdriver.Chrome()browser.get('https://www.zhihu.com/signup?next=%2F...原创 2019-03-10 21:48:15 · 697 阅读 · 0 评论 -
xpath不能正常匹配
记录一下今天掉的坑。。。本来再写爬虫的时候发现xpath能在浏览器里正常使用,但是放到我的项目里就是一个空列表。弄了我将近一个小时。解决方案有两种:第一种就是携带cookie值。self.headers = { "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537....原创 2019-03-11 16:16:03 · 1986 阅读 · 2 评论 -
避坑--pymysql.err.ProgrammingError: (1064, "You have an error in your SQL syntax; check the manual tha
记录昨天遇到的问题以及解决方案。 昨天再弄爬虫爬取数据想存入数据库的时候,突然抛出pymysql.err.ProgrammingError: (1064,******)明明MySQL语句是对的,但是怎么都运行不成功。错误提示就是他:pymysql.err.ProgrammingError: (1064, "You have an error in your SQL synt...原创 2019-03-13 12:40:13 · 26353 阅读 · 9 评论 -
python3解决leetcode Z 字形变换
题目描述:将一个给定字符串根据给定的行数,以从上往下、从左到右进行Z 字形排列。比如输入字符串为 "LEETCODEISHIRING"行数为 3 时,排列如下:L C I RE T O E S I I GE D H N之后,你的输出需要从左往右逐行读取,产生出一个新的字符串,比如:"LCIRETOESIIGEDHN"。请你实现这个将字符串进行指定行...原创 2019-09-23 21:30:17 · 254 阅读 · 0 评论 -
uWSGI nginx error : connect() failed (111: Connection refused) while connecting to upstream
最近项目写完了正准备上线,但是状态百出,等我弄完的就把自己掉过的坑都整理出来,一来防止自己再同一个地方跌倒两次,二来也算在感受别人的光热的同时也去帮忙别人。项目启动之后浏览网站一直都是nginx bad request界面,查看了错误日志发现报了一大串(查看的方法:cat /var/log/nginx/error.log)[error] 882#0: *19 connect() fa...原创 2019-07-18 15:08:03 · 5871 阅读 · 4 评论 -
python 时间戳与时间之间的转换
一、将时间戳转换成年月日的时间格式import timenow_time = int(time.time()) #获取当前时间的时间戳Htime = time.localtime(now_time)timeYMD = time.strftime('%Y-%m-%d %H:%M:%S', Htime) #转换成年月日的形式二、将制定时间格式转换成时间戳tssl = '201...原创 2019-07-02 17:27:33 · 797 阅读 · 0 评论 -
django上传文件
在实际项目开发中经常用到上传文件之类的需求,最常用的方法就是通过form表单进行上传。后台通过request.FILES获取,下面分点描述如何通过表单进行上传文件。一、前端代码。 <form action="/modify" method="post" enctype="multipart/form-data" >{% csrf_token %} <div c...原创 2019-06-24 08:43:42 · 1465 阅读 · 0 评论 -
python3版本下MySQLClient 模块安装 C1083失败解决办法
Collecting mysqlclient Using cached https://files.pythonhosted.org/packages/f4/f1/3bb6f64ca7a429729413e6556b7ba5976df06019a5245a43d36032f1061e/mysqlclient-1.4.2.post1.tar.gzBuilding wheels for col...原创 2019-05-27 21:45:22 · 1789 阅读 · 0 评论 -
mysql error code 1153:Got a packet bigger than ‘max_allowed_packet’
出现这个错误很正常,说明你的是数据包超过了max_allowed_packet限制,通过max_allowed_packet可以解决此问题。可以通过语句查看: show VARIABLES like '%max_allowed_packet%';这个大小目前不够用了,可以修改my.ini文件。Windows的用户目录在(C:\ProgramData\MySQL\MySQL Serve...原创 2019-03-22 10:16:19 · 1132 阅读 · 0 评论 -
爬虫爬取图片并存储到数据库
# 下载图片并保存图片 r = requests.get(data_dict['img_src']) with open('F:\python_project\kerastase\{}.jpg'.format(data_dict['good_name']), 'wb') as f: f.write(r.content) ...原创 2019-03-13 12:53:14 · 2905 阅读 · 0 评论 -
避坑--python3往mysql中插入datetime类型的数据
昨天在这个上面找了好久的错,嘤嘤嘤~很多时候我们在爬取数据存储的时候都需要将当前时间作为一个依据,在python里面没有时间类型可以直接拿来就用的。我们只需要在存储之前将时间类型稍作修饰就行。datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")如:#插入产品信息 insert_good_sql = """ ...原创 2019-03-13 12:47:23 · 6024 阅读 · 0 评论 -
python 求最长公共前缀
一、题目要求编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 ""。示例1输入: ["flower","flow","flight"]输出: "fl"示例2输入: ["dog","racecar","car"]输出: ""解释: 输入不存在公共前缀。说明:所有原创 2018-12-14 12:51:03 · 3789 阅读 · 1 评论 -
python实现字符串转换成整数atoi
一、题目要求请你来实现一个 atoi 函数,使其能将字符串转换成整数。首先,该函数会根据需要丢弃无用的开头空格字符,直到寻找到第一个非空格的字符为止。当我们寻找到的第一个非空字符为正或者负号时,则将该符号与之后面尽可能多的连续数字组合起来,作为该整数的正负号;假如第一个非空字符是数字,则直接将其与之后连续的数字字符组合起来,形成整数。该字符串除了有效的整数部分之后也可能会存在多余...原创 2018-12-14 09:36:45 · 1321 阅读 · 0 评论 -
用ajax实现登录数据库数据验证
1、数据库数据截图2、登录界面3、登录失败停留在登录界面4、登录成功进入主界面核心代码:Views.pyfrom django.shortcuts import render# Create your views here.from django.http import HttpResponse,JsonResponse,HttpResponseRe...原创 2018-10-12 09:52:57 · 4746 阅读 · 4 评论 -
实现简单的从文件读取和写入学生信息的项目
#encoding = 'UTF-8'''' @author:xianyt @func:实现简单的从文件读取和写入学生信息的项目 @date:2018/8/21'''with open('stu.txt', 'r') as f: #取出文件内容 student_list = f.read()if student_list=='': studen...原创 2018-08-21 14:28:55 · 4512 阅读 · 0 评论 -
python实现简单银行转账逻辑判断(软件mysql)
#encoding=UTF-8''' @author:xianyt @vertion:python3 @date:2018/8/12 @func:完成银行转账: 开始事务--检查账户A和账户B是否可用--- 判断账户a是否有100--账户A-100,账户B+100--提交事务---- 如果再事务处理的过程中出错则回...原创 2018-08-13 14:14:05 · 641 阅读 · 0 评论 -
python异常处理
python异常处理 python有两种错误,分别是语法错误和异常。语法错误又叫解析错误,通常指python解析源代码的时候出现的错误。异常就是一个事件,该事件会在程序执行过程中发生,影响了程序的正常执行。异常是python对象。通常我们需要捕获,否则程序会终止执行。所有的异常的基类就是baseException一、捕获异常可以使用try/except/else/finally语句...原创 2018-08-03 15:42:24 · 311 阅读 · 0 评论 -
python核心编程--网络编程
在学习网络编程之前,我们先来回顾一下什么是客户端/服务器架构。在服务器响应客户端请求之前,必须进行一些初步的设置流程来为之后的工作做准备。 首先会创建一个通信端点,它能够使服务器监听请求。等待客户端连接。什么是Socket? Socket又称"套接字",应用程序通常通过"套接字"向网络发出请求或者应答网络请求,使主机间或者一台计算机上的进程间可以通讯。创建套接字连接有两种方式,一种是是面向连接的套...原创 2018-08-02 18:38:39 · 220 阅读 · 0 评论 -
python核心编程正则表达式
正则表达式不仅仅是python语言中的一个表现,可以说他在任何语言中都可以用来匹配字符串。比如我们平时用的邮件或是电话号码区号判断等等。虽然用split('@")也不失为一种办法,但是明显把简单问题复杂化了。 在判断一个字符串是否可以使用正则表达式来解决: 1)研究表达式的特点。比如邮件@后面表示域名。 2)使用正则表达式来精...原创 2018-08-01 22:12:36 · 343 阅读 · 1 评论 -
python使用不定长参数求输入值的和、平均值、最大值和最小值
''' @author:xianyt @vertion:python3 @date:2018/7/25 @function:定义函数,求输入数字的和,平均值,最大值,最小值(要求使用不定长参数) 实现思路: 1)输出参数,用逗号分隔 2)将分隔出来的参数转换成整形,以便处理 3)将列表传参进函数,(问题遗留:...原创 2018-07-25 16:27:43 · 14641 阅读 · 1 评论 -
python模拟网上书籍二级分类的管理(简单语法实现)
#Encoding = UTF-8''' @author:xianyt @vertion:python3 @date:2018/07/24 @func:模拟网上书籍二级分类的管理 实现思路: 增加书籍级别 增加一级书籍 增加指定一级目录下的二级书籍 删除书籍级别 ...原创 2018-07-24 18:12:14 · 526 阅读 · 0 评论 -
python练习题(简单语法实现)
#encoding = UTF-8''' @author:xianyt @vertion:python3 @date:20180723 @func:19、 模拟实现用户登录,允许三次错误,超过三次退出 实现逻辑: 1)创建一个字典来存放用户账号和密码 2)添加用户账号和密码 3)登陆功能 i)检查输入的用户名是否正确...原创 2018-07-23 19:10:24 · 586 阅读 · 0 评论 -
Windows下如何用virtualenv创建虚拟环境
虚拟环境可以有效的解决不同项目需要不同环境的问题,虚拟环境最大的好处就是可以将我们的开发环境进行隔离,让彼此之间不互相受影响。一、Windows下创建虚拟环境1、虚拟环境需要用到的库是virtualenv,使用安装命令pip install virtualenv由于我已经安装过了,就不需要重复安装。2、安装虚拟环境扩展包pip install virtualenv...原创 2018-10-14 11:35:28 · 4258 阅读 · 0 评论 -
linux下如何用virtualenv创建虚拟环境
虚拟环境可以有效的解决不同项目需要不同环境的问题,虚拟环境最大的好处就是可以将我们的开发环境进行隔离,让彼此之间不互相受影响。1、安装虚拟环境sudo pip install virtualenv我这个是已经安装过了2、安装虚拟环境扩展包sudo pip install virtualenvwrapper3、编辑家目录下面的.bashrc文件,添加下面两行,成功之后...原创 2018-10-14 11:47:20 · 3366 阅读 · 3 评论 -
python实现杨氏矩阵查找
# _*_ coding:utf-8 _*_''' @author:xianyt @date:2018/ @func:在一个 m 行 n 列二维数组中, 每一行都按照从左到右递增的顺序排序每一列照从上到下递增的顺序排序。 请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整 实现思路: 如果查找的数字小于最小的或者大...原创 2018-12-06 19:47:20 · 443 阅读 · 0 评论 -
中国天气网数据爬取
爬取中国天气网数据:目标数据:地区名 最低气温,最高气温 存入cvs表中 知识点一、开启多线程class Queue.Queue(maxsize) FIFO 先进先出Queue.qsize() 返回队列的大小 Queue.empty() 如果队列为空,返回True,反之False Queue.full() 如果队列满了,返回True,反之False Queue....原创 2018-11-27 21:13:56 · 3139 阅读 · 0 评论 -
使用xpath爬取糗事百科的数据
使用xpath爬取糗事百科的数据 from lxml import etree#提取页面数据html_data= etree.HTML(html)list_data= html_data.xpath('.//div[@id="content-left"]/div') 代码详情# -*- coding:utf-8 -*-import requestsfrom lx...原创 2018-11-27 18:35:44 · 523 阅读 · 0 评论 -
使用正则表达式爬取猫眼TOP100
使用正则表达式爬取猫眼TOP100一、正则表达式: 正则表达式用来匹配HTML标签有一个最大的优势,就是速度快。但是正则表达式的写法较为复杂,而且在页面结构发生改变的时候就会出问题。正则表达式通常用来过滤数据,提取我们想要的数据。 对整合的页面数据进行分析,得到数据排名、电影封面、电影名字、主演、上映时间以及分数。 在返回的页面中找到需要的代码块'...原创 2018-11-27 17:31:23 · 371 阅读 · 0 评论 -
领扣网两数相加
给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的 两个 整数。你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。 暴力法,直接使用暴力的迭代方法遍历出来。 class Solution(object): def twoSum(self, nums, target): """ :...原创 2018-12-04 20:47:54 · 239 阅读 · 0 评论 -
使用selenium爬取斗鱼直播数据
分析斗鱼直播首页https://www.douyu.com/directory/all 使用selenium来实现跳转页面,定位到跳转页面位置。 拿到页面后通过xpath提取想要的数据进行分析。 保存数据 # -*- coding:utf-8 -*-from selenium import webdriverfrom selenium.webdriver.chrome.optio...原创 2018-11-30 10:16:05 · 1124 阅读 · 0 评论 -
python四种实现单例模式
# _*_ coding:utf-8 _*_''' @author:xianyt @date:2018/ @func:'''''' 在默认的情况下创建多个对象的ID不相同,如果想要设置为单例模式,可以通过__new__()方法中的__instance在__new__方法中把类实例绑定到类变量_instance上,如果cls._instance为None表示...原创 2018-11-29 22:01:00 · 433 阅读 · 0 评论