有时网页中会嵌套一个或者多个Frame,此时我们直接去找嵌套在Frame里面的元素会抛出异常,所以在操作的时候我们需要将页面焦点切换到Frame里面,下面我们就以一个实例演示一下!首先先创建三个html文件,文件代码如下:1)frameset.html2)frame_left.html3)frame_right.html4)frame_middle.html5)把这四个html文件放在同一个文件夹下<以下是python实现该逻辑的代码:importunit
系统 2019-09-27 17:50:57 2185
今天我们讲一下用Python写的GUI小程序。一个小闹钟(只是屏幕提示,没有声音哦)让我们先介绍这个闹钟如何奇葩。需要通过命令行启动。没有标题栏。没菜单。甚至没有关闭按钮。没有运行界面。看到这里想必大家要问了,何必去做一个这样弱爆了的程序呢。显然,教育意义大于其实际用处。像其他的模块一样,QT界面包是需要加载的。我们用到了命令行输入,所以,sys模块也是必须的。用到了时间,但是我们不需要使用time模块,我们用QT提供的QTime模块。让我们先写impor
系统 2019-09-27 17:50:44 2185
python2和python3实现在图片上加汉字,最主要的区别还是内部编码方式不一样导致的,在代码上表现为些许的差别。理解了内部编码原理也就不会遇到这些问题了,以下代码是在WIN10系统上时测好用的。Python2在图片上加汉字代码实现#-*-coding:cp936-*-importcv2importnumpyasnpfromPILimportImage,ImageDraw,ImageFontdefID_2_Word(txt):tmp_ID=txt.sp
系统 2019-09-27 17:50:33 2185
Python3快速入门(五)——Python3函数一、函数定义1、函数定义Python定义函数使用def关键字,一般格式如下:deffunction_name(parameter_list):pass默认情况下,参数值和参数名称按函数声明中定义的顺序进行匹配。函数代码块以def关键词开头,后接函数标识符名称和圆括号()。任何传入参数和自变量必须放在圆括号中间,圆括号之间可以用于定义参数。函数的第一行语句可以选择性地使用文档字符串描述函数说明。函数内容以冒号
系统 2019-09-27 17:50:18 2185
9.桶排序9.1算法思想桶排序假设待排序的一组数均匀独立的分布在一个范围中,并将这一范围划分成几个子范围(桶)。然后基于某种映射函数f(高效与否的关键就在于这个映射函数的确定),将待排序列的关键字k映射到第i个桶中(即桶数组B的下标i),那么该关键字k就作为B[i]中的元素。接着将各个桶中的数据分别排序(有可能再使用别的排序算法或是以递归方式继续使用桶排序进行排)。然后依次枚举输出B[0]….B[M]中的全部内容即完成了一个数组的桶排列。ps:桶排序可以有
系统 2019-09-27 17:49:44 2185
代码示例支持平台:Centos6.3Python:2.7.14代码示例:菜单-Python踩坑指南代码示例1.1踩坑案例长期运行的daemon进程或者socket测试类进程,经常遇到的坑是:IOError:[Errno24]Toomanyopenfiles即进程遇到IO错误,无法打开更多的文件.1.2填坑和分析一般从两个方面入手:1.2.1从程序优化入手检查文件打开是否遵循了"谁打开谁关闭"原则文件是否存在关闭泄露a.谁打开谁关闭是个普适的原则:只有逻辑设
系统 2019-09-27 17:49:40 2185
lambda是表达式,用于创建匿名函数,可以和filter、map、reduce配合使用。本文环境Python3.7。一、lambda表达式lambda只包含一个语句,用于创建匿名函数。语法:lambda[arg1[,arg2,.....argn]]:expressionarg1--参数,可以有多个expression--表达式使用例子:f1=lambdax:x>10print(f1(1))#输出:Falseprint(f1(11))#输出:Truef2=
系统 2019-09-27 17:49:17 2185
给定一个大小为n的数组,找到其中的众数。众数是指在数组中出现次数大于⌊n/2⌋的元素。你可以假设数组是非空的,并且给定的数组总是存在众数。示例1:输入:[3,2,3]输出:3示例2:输入:[2,2,1,1,1,2,2]输出:2解法一:满足题干要求的众数若存在,则仅可能存在一个用dict来存储每个数字出现的次数根据出现次数排序判断出现次数最多的元素,其出现次数是否超过len/2+1python代码:classSolution(object):defmajor
系统 2019-09-27 17:49:06 2185
递归和迭代从本质上看都是循环的一种,递归通过在循环中调用自身,而迭代则通过某段代码实现循环一般来说:迭代的思想会使问题简单化,但计算过程会十分繁琐,因为参数要通过传递的形式先到达递归条件值,然后再一层一层返回,会占用大量内存,只适用于小型的问题求解。一、递归:它通常把一个大型复杂的问题层层转化为一个与原问题相似的规模较小的问题来求解,递归策略只需少量的程序就可描述出解题过程所需要的多次重复计算,大大地减少了程序的代码量注意:递归就是在过程或函数里面调用自身
系统 2019-09-27 17:47:18 2185
第一步、查看python的版本号以及安装路径;通过以上的查看可以看到,python默认是指向到python2的,所以这里我们不动它,保持现状态即可。备注:(因为现在还有很多的系统更新都需要使用到pyhton2例如:Centos7的yum安装和更新。django这些框架现在默认又是使用python3)第二步、安装python3的相关依赖库,1.安装python3.7可能使用的依赖yum-yinstallopenssl-develbzip2-develexpa
系统 2019-09-27 17:47:05 2185
Python3线程中常用的两个模块为**_threadthreading(推荐使用)每个独立的线程有一个程序运行的入口、顺序执行序列和程序的出口。但是线程不能够独立执行,必须依存在应用程序中,由应用程序提供多个线程执行控制。每个线程都有他自己的一组CPU寄存器,称为线程的上下文,该上下文反映了线程上次运行该线程的CPU寄存器的状态。thread模块已被废弃。用户可以使用threading模块代替。所以,在Python3中不能再使用"thread"模块。为了
系统 2019-09-27 17:46:43 2185
gmtime()方法转换历元到一struct_time以UTC其中dst的标志值始终为0以秒表示时间。如果不设置秒时或None,返回的时间为当前time()。语法以下是gmtime()方法的语法:time.gmtime([sec])参数sec--这是秒数转换成结构struct_time来表示。返回值此方法不返回任何值。例子下面的例子显示了gmtime()方法的使用。#!/usr/bin/pythonimporttimeprint"time.gmtime()
系统 2019-09-27 17:46:42 2185
直接交换2个数字的位置Python提供了一种直观的方式在一行代码中赋值和交换(变量值)。如下所示:x,y=10,20print(x,y)x,y=y,xprint(x,y)#1(10,20)#2(20,10)在上面代码中,赋值的右侧形成了一个新元组,而左侧则立刻将该(未被引用的)元组解包到名称和。待赋值完成后,新元组就变成了未被引用状态,并且被标为可被垃圾回收,最终也就发生了数字交换。链接比较操作符比较运算符的聚合是另一种有时用起来很顺手的技巧。n=10re
系统 2019-09-27 17:46:28 2185
django的url采用正则表达式进行配置,虽然强大却也广为诟病。反对者们认为django的url配置过于繁琐,且不支持默认的路由功能。我倒觉得还好,只是如果觉得不爽,为什么不自己小小的hack一下,反正也就几行代码的事。在这个背景下,我整了这个url_helper,利用url_helper可以简化配置和实现url的默认路由。所谓的url_helper其实就只有url_helper.py一个文件,使用的时候只想要import就可以。url_helper的具
系统 2019-09-27 17:46:08 2185
摘要:matplotlib是可以组合许多的小图,放在一张大图里面显示的.使用到的方法叫作subplot.1.定义引用importmatplotlib.pyplotaspltimportnumpyasnp#matplotlib是可以组合许多的小图,放在一张大图里面显示的.使用到的方法叫作subplot.#使用import导入matplotlib.pyplot模块,并简写成plt2.编写函数defmultiGraph():"""图中图"""plt.figure
系统 2019-09-27 17:46:02 2185