python学习
文章平均质量分 69
从基本的模块开始,慢慢进阶python
bible_reader
keep.
展开
-
【python】leetcode括号生成
给出n代表生成括号的对数,请你写出一个函数,使其能够生成所有可能的并且有效的括号组合。例如,给出n=3,生成结果为:[ "((()))", "(()())", "(())()", "()(())", "()()()"]class Solution(object): def generate(self, temp, left, right, result): if (left == 0 and right == 0): ...原创 2021-10-24 23:26:53 · 101 阅读 · 0 评论 -
【python】jinja2利用PackageLoader加载模板文件
jinja2利用PackageLoader加载模板文件假设文件层次结构如下所示:代码逻辑中需要用到templates下面的template.html文件,然后利用html模板生成html报告。此时,需要按照如下方式加载模板 env = Environment(loader=PackageLoader("serverInterfaceTestPlugin", "t...原创 2020-04-22 19:55:12 · 3399 阅读 · 0 评论 -
【python】jinja2模板引擎生成HTML
Python之jinja2模板引擎生成HTML0 背景在之前的文章中,我介绍过《Python之生成HTML文件》以及《HTML零基础入门教程(详细)》,手动生成了html文件,在实际使用的时候,我们完全可以套用模板文件来生成,免去了一条一条手写的麻烦。关于python的模板引擎有很多种类,本文选择的是比较常用的一种jinja2,接下来对该引擎的使用做一个介绍。1 jinja2介绍Jin...转载 2020-04-22 16:14:27 · 1800 阅读 · 0 评论 -
【python】去除\n\r\t最佳方法
去除\n\r\t最佳方法>>> a='abcd\r'>>> a.strip()'abcd'>>> a='abcd\r\n\t'>>> a.strip()'abcd'>>> a='\n\r\tabcd'>>> a.strip()'abcd'javascript:void(...原创 2019-12-24 10:44:24 · 7392 阅读 · 0 评论 -
【python】求matrix矩阵中"1"能够围成最大的正方形的面积
问题:设一个矩阵全部由0和1组成,求该矩阵M中只包含1的最大正方形的面积分析:假设为矩阵上面坐标(i,j)的点的值。假设表示以坐标点(i,j)的为右下角的正方形的边长,那么很容易可以知道如下规律:如果为0,则为0;如果不为0,则的值等于以点(i-1,j-1)、点(i-1,j)和点(i,j-1)为右下角的所组成的正方形的最小边长+1;同时,矩阵D的第一列和第一行的值直接等于矩阵M的值...原创 2019-11-12 10:32:05 · 1306 阅读 · 0 评论 -
【Android自动化】装饰测试用例,打印测试用例名
装饰测试用例,打印测试用例名为了在log中标记测试用例的执行进度,希望每次执行用例的时候输出测试用例名。而Python的装饰器可以装饰一个函数的功能,为函数增加动作,因此此处考虑用Python的装饰器来装饰测试用例,实现每执行一个用例的时候,首先打印用例名到log中。1、编写一个装饰器函数def decorator(func): """ """ def wra...原创 2019-11-08 20:51:41 · 151 阅读 · 0 评论 -
【python】蓄水池
蓄水池题目:给定一个列表,列表中的元素表示蓄水池的木板的高度。如果以这些木板组合为一个水池(宽度为1),最多可以容纳多少单位的水。题解:遍历每一块木板的高度,然后查看当前木板的左边和右边的各自最高的木板的高度,然后取两者的较小值,然后跟当前木板的高度作比较,如果比当前木板高,则表示当前木板这里可以积累体积的水。#coding:utf-8# 题目介绍:给定一个数组,该数组...原创 2019-11-08 19:45:05 · 591 阅读 · 0 评论 -
【python】求n对括号总共可以生成多少组合理的括号对
求n对括号总共可以生成多少组合理的括号对例如3对(),总共可以生成5组括号对:['((()))', '(()())', '(())()', '()(())', '()()()']题目分析:有效的括号需要满足条件:括号数量匹配 && 不会出现不匹配的括号情况1、起始有 n 个左括号和 n 个右括号需要拼接到字符串中。2、先将结果字符串初始化为空。3、每次递...原创 2019-11-08 15:29:54 · 1547 阅读 · 1 评论 -
【python】字节跳动大学水房接水
题目:#字节跳动大学有一个水房,水房里一共装有m 个龙头可供同学们打开水,每个龙头每秒钟的供水量相等,均为1。#现在有n 名同学准备接水,他们的初始接水顺序已经确定。将这些同学按接水顺序从1到n 编号,i 号同学的接#水量为wi。接水开始时,1 到m 号同学各占一个水龙头,并同时打开水龙头接水。当其中某名同学j 完成其接水#量要求wj 后,下一名排队等候接水的同学k会马上接替j 同...原创 2019-10-16 20:53:57 · 296 阅读 · 0 评论 -
【python】实现LRU缓存
python实现LRU缓存#coding:utf-8 class LRUCache(object): """ """ def __init__(self, cache_size): """ """ self.cache_size = cache_size self.cache = [] d...原创 2019-10-12 14:14:44 · 365 阅读 · 0 评论 -
【python】安装MySQLdb至指定目录的python
安装MySQLdb至指定目录的python1、why之前的文档说明了怎么为特定目录下面的python安装模块,但是当利用之前的方法的时候,安装失败,一直提示Import error: No module named _mysql。2、how后面经过排查发现是_mysql.so文件未找到所引起的。而这个_mysql.so文件就在安装包MySQL-python-1.2.5.zip内,...原创 2019-05-20 11:47:08 · 683 阅读 · 0 评论 -
【python】python读取命令行选项参数
python读取命令行选项参数Python中由三个内建的模块用于处理命令行参数:第一个:getopt,只能简单的处理命令行参数官网资料:https://docs.python.org/2/library/getopt.html#module-getopt第二个:optparse,功能强大,易于使用,可以方便地生成标准的、符合Unix/Posix 规范的命令行说明。(Python2.7以...转载 2018-09-19 21:00:36 · 6554 阅读 · 0 评论 -
【python】python执行shell命令或脚本
system() 其中最后一个0是这个命令的返回值,为0表示命令执行成功。使用system无法将执行的结果保存起来。 popen() 获取命令执行的结果,但是没有命令的执行状态,这样可以将获取的结果保存起来放到list中。 commands可以很方便的取得命令的输出(包括标准和错误输出)和执行状态位。 commands.getoutput('ls')这个方...转载 2018-09-05 20:39:20 · 28439 阅读 · 0 评论 -
遗传算法(python版)
介绍了遗传算法并给出了Python版的GA算法原创 2017-05-27 16:59:52 · 56686 阅读 · 22 评论 -
Python 模块--matplotlib安装和学习
介绍了matplotlib的安装和相应的该模块的使用方法。原创 2016-11-17 10:58:09 · 9110 阅读 · 0 评论 -
Python 3.x Error:TypeError: a bytes-like object is required, not 'str'
分析了TypeError: a bytes-like object is required, not 'str'产生的原因并给出解决办法,并列举了Python内str和bytes相互之间的转化方法。原创 2016-11-05 21:32:04 · 91610 阅读 · 7 评论 -
Python学习--正则表达式
文章介绍了Python的正则表达式的元字符和语法,以及详细地讲解了正则匹配中常用的方法和属性。原创 2016-09-10 23:09:01 · 14199 阅读 · 0 评论 -
Python学习--函数参数
Python函数的参数原创 2016-09-07 23:14:51 · 8281 阅读 · 0 评论 -
Python学习--装饰器
Python装饰器学习原创 2016-09-06 23:22:24 · 8105 阅读 · 0 评论 -
Python模块学习--email
Python模块之email参考:http://blog.csdn.net/bravezhe/article/details/7659173转载 2016-09-01 23:30:01 · 14162 阅读 · 0 评论 -
Python模块学习--smtplib
Python模块学习之smtplib参考:http://blog.csdn.net/bravezhe/article/details/7659198转载 2016-09-01 22:32:03 · 8362 阅读 · 0 评论 -
【python】查找列表中两个元素之和等于某一值的两个元素
查找列表中两个元素之和等于某一值的两个元素思路:利用a+b=sum的思路,进行变形:b=sum-a,然后遍历列表,让列表元素逐一赋值给a,然后查看b是否存在列表当中即可。直接上代码:def sum_of_two(arr,target): dic = {} for i,x in enumerate(arr): j = dic.get(target-x...原创 2019-09-07 09:22:17 · 5451 阅读 · 1 评论 -
【python】查找列表中两个数,使得第一个数 减 第二个数的值最大,且第一个数的下标小于第二个数
查找列表中两个数,使得第一个数 减 第二个数的值最大,且第一个数的下标小于第二个数思路:取出列表的第一和第二个数构成子序列,并让当前最大值maxValue=array[0],子序列中的最大偏差值maxDiffValue=maxValue-array[1],然后从第三个数(若有)开始,重新计算子序列的最大值maxValue=(maxValue>array[1])?maxValue:ar...原创 2019-09-07 10:34:00 · 705 阅读 · 0 评论 -
【python】二分查找
def binarySearch(array, start, end, target): """ """ if len(array) == 0: return None if start > end: return None mid_pos = start + (end - start + 1) / 2 pri...原创 2019-09-25 15:06:09 · 86 阅读 · 0 评论 -
【python】获取列表的组合数
def subarray(array, index): """ """ if len(array) <= 1: return [] return array[0:index] + array[index + 1:]def permutation(array): """ """ result = [] ...原创 2019-09-25 15:40:50 · 974 阅读 · 0 评论 -
【python】分苹果
问题:一堆苹果,5个人。第一个人将苹果丢掉一个,然后平均分成5份后拿走其中的一份;第二个人将剩余的苹果丢掉一个,然后再平均分成5份后拿走其中的一份,依次类推...第五个人在第四个人拿走剩下的那部分苹果中同样丢掉一个,然后平均分成5份后拿走其中的一份。求问最少的苹果数。depth = 0 def match(num): """ """ global depth ...原创 2019-09-26 16:54:24 · 3626 阅读 · 2 评论 -
【python】查找两个字符串中最大子串
def findMaxSubString(str1, str2): """ """ maxSub = 0 maxSubString = "" str1_len = len(str1) str2_len = len(str2) for i in range(str1_len): str1_pos = i ...原创 2019-09-27 09:31:40 · 1872 阅读 · 1 评论 -
【python】查找数组中最大和的子序列
解法1:import sys def findMaxSubArraySum(array): """ """ length = len(array) max_total = -sys.maxint max_sum_list = [] for i in range(length): cur_total = array[i]...原创 2019-09-27 17:11:13 · 590 阅读 · 0 评论 -
【python】解析log文件,并获取状态为200的处理平均时间
#line format: [http url] [status code] [respond time(ms)]def getProcessTime(line): """ """ if line: parts = line.split(' ') status = parts[1] time = parts[2][:-1]...原创 2019-09-29 11:39:31 · 1048 阅读 · 0 评论 -
【python】解析log文件并获取出现次数前3的ip
#line format: 2019-09-27 19:00:00 file.cpp:12345 12.12.12.12def getIp(line): """ """ ip = line.split(' ')[-1][0:-1] return ip def process_ip_info(dic): """ """ ip_li...原创 2019-09-27 18:47:09 · 456 阅读 · 0 评论 -
【python】查找矩阵中是否存在字符串
#请设计一个函数,用来判断在一个矩阵中是否存在一条包含某字符串所有字符的路径。# 路径可以从矩阵中的任意一个格子开始,每一步可以在矩阵中向左,向右,向上,向下移动一个格子。# 如果一条路径经过了矩阵中的某一个格子,则之后不能再次进入这个格子。# 例如 a b c e s f c s a d e e 这样的3 X 4 矩阵中包含一条字符串"bcced"的路径,# 但是矩阵中不包含"a...原创 2019-10-08 20:49:51 · 1481 阅读 · 0 评论 -
【python】判断字符串是否为有效的数字表现形式
判断字符串是否为有效的数字表现形式#coding:utf-8import re"""请实现一个函数用来判断字符串是否表示数值(包括整数和小数)。例如,字符串"+100","5e2","-123","3.1416"和"-1E-16"都表示数值。 但是"12e","1a3.14","1.2.3","+-5"和"12e+4.3"都不是。"""def judge(str): "...原创 2019-10-08 16:52:39 · 774 阅读 · 0 评论 -
【python】查找可以在矩阵中可以到达的步数和
一个m行和n列的矩阵,一个机器人从(0,0)位置开始,只能上下左右运动,但不能进入横纵坐标的各个数位上之和超过threshold的位置,比如threshold=18,可以进入(35,37),但不能进入(35,38)。因为3+5+3+8>18。求问该机器人可以在该矩阵中达到多少个不同的位置。#coding:utf-8def make_visited_flags(cols_num, ...原创 2019-10-08 15:06:32 · 216 阅读 · 0 评论 -
【python】翻转matrix矩阵
题目:给定 matrix = [ [1,2,3], [4,5,6], [7,8,9] ], 原地旋转输入矩阵,使其变为: [ [7,4,1], [8,5,2], [9,6,3] ]思路:先沿对角线翻转,然后沿着中间竖线翻转。#coding:utf-8 def print_matrix(matrix): """ """ for i in range(len...原创 2019-09-29 17:09:17 · 1560 阅读 · 0 评论 -
【python】抓小偷
题目:a说我不是小偷; b说c是小偷; c说小偷肯定是d; d说c胡说!def run(): """ """ num = 4 for i in range(num): if ((i != 0) + (i == 2) + (i == 3) + (i != 3)) == 3: return iif __name...原创 2019-09-29 16:26:20 · 4514 阅读 · 2 评论 -
【python】确定扑克牌是否是顺子
#coding: utf-8 def judgeSequence(sequence): """ """ length = len(sequence) count_zero = 0 count_gap = 0 # 统计大小王的个数 for i in range(length): if sequence[i] == 0:...原创 2019-09-29 15:50:18 · 1304 阅读 · 0 评论 -
【python】滑动窗口
def getMax(array): """ """ if len(array) <= 0: return None return max(array)def run(array, window_size): """ """ result = [] length = len(array) if le...原创 2019-09-29 14:28:28 · 1202 阅读 · 1 评论 -
【python】查找字符串中第一次重复出现3次的字符串
def find3time(str): """ """ dic = {} for i in range(len(str)): if dic.has_key(str[i]): dic[str[i]] = dic[str[i]] + 1 if dic[str[i]] == 3: ...原创 2019-09-27 17:12:56 · 3195 阅读 · 0 评论