Python

利用Python判定IP地址合法性的三种方法

在帮朋友解决这个问题后,随便记录一下这三种方法:第一种方法:使用正则表达式:因为当时的要求是判定10.0.0.1到10.255.255.255,原理其实是一样。这里简单回顾一下正则表达式模式的内容:常见的如:\d可以表示0~9的任意一个数字字符而\D是匹配一个非数字字符等价于^^是匹配字符串的开头,但放在[]中表示匹配不在[]中的字符$是匹配字符串的末尾.是匹配除了换行符任意字符{}表示重复几次,例如:^a{2,4}$aa,aaa或aaaa|的是或的意思[

系统 2019-09-27 17:55:59 1695

Python

python 动态添加属性和方法

python动态语言在运行时可以改变类的结构,添加属性,添加方法删除函数添加属性:就是在类的结构以外添加属性也可以修改1.添加对象属性(1)p1.age="123"#使用对象名创建(2)setattr(p1,"home","阳光小区")#使用内置方法设置和取得属性值getattr(p1,"home")#取得新增属性的值2.添加类属性(1)Preson.ID=111112#使用类名创建添加方法:3.添加对象方法importtypesdefstudy(self

系统 2019-09-27 17:55:39 1695

Python

Python3多线程版TCP端口扫描器

本文实例讲述了python数据结构之Array用法,分享给大家供大家参考。具体方法如下:importctypesclassArray:def__init__(self,size):assertsize>0,"Arraysizemustbe>0"self._size=sizepyArrayType=ctypes.py_object*sizeself._elements=pyArrayType()self.clear(None)defclear(self,va

系统 2019-09-27 17:55:37 1695

Python

Python单元测试_使用装饰器实现测试跳过和预期故障的方法

Python单元测试unittest中提供了一下四种装饰器实现测试跳过和预期故障。(使用Python2.7.13)请查考Python手册中:https://docs.python.org/dev/library/unittest.htmlThefollowingdecoratorsimplementtestskippingandexpectedfailures:#以下装饰器实施测试跳过和预期故障:@unittest.skip(原因)Unconditiona

系统 2019-09-27 17:54:46 1695

Python

Python 控制终端输出文字的实例

如下所示:classbcolors:HEADER='\033[95m'OKBLUE='\033[94m'OKGREEN='\033[92m'WARNING='\033[93m'FAIL='\033[91m'ENDC='\033[0m'defdisable(self):self.HEADER=''self.OKBLUE=''self.OKGREEN=''self.WARNING=''self.FAIL=''self.ENDC=''Tousecodeliket

系统 2019-09-27 17:54:07 1695

Python

python将类似json的数据存储到MySQL中的实例

由于之前对于爬取下来的数据都是存入MongoDB中,想起来还没有尝试存入MySQL,于是将一篇简单的文章爬取下来,存入MySQL试试这里用到的python模块是pymysql,因为MySQLdb之前已经停止维护首先在cmd中连接MySQL并且创建一个数据库json在图形化界面workbench中可以看到接下来就要在pycharm中写代码了,在pycharm中导入pymysql后即可#建立python与MySQL之间的连接mysql=pymysql.conn

系统 2019-09-27 17:53:26 1695

Python

Python Web Flask源码解读(四)——全局变量

关于我一个有思想的程序猿,终身学习实践者,目前在一个创业团队任teamlead,技术栈涉及Android、Python、Java和Go,这个也是我们团队的主要技术栈。Github:https://github.com/hylinux1024微信公众号:终身开发者(angrycode)Flask中全局变量有current_app、request、g和session。不过需要注意的是虽然标题是写着全局变量,但实际上这些变量都跟当前请求的上下文环境有关,下面一起

系统 2019-09-27 17:52:39 1695

Python

python中使用mysql数据库详细介绍

一、安装mysql如果是windows用户,mysql的安装非常简单,直接下载安装文件,双击安装文件一步一步进行操作即可。Linux下的安装可能会更加简单,除了下载安装包进行安装外,一般的linux仓库中都会有mysql,我们只需要通过一个命令就可以下载安装:Ubuntu\deepin复制代码代码如下:>>sudoapt-getinstallmysql-server>>Sudoapt-getinstallmysql-clientcentOS/redhat复

系统 2019-09-27 17:51:15 1695

Python

Python多线程编程(一):threading模块综述

Python这门解释性语言也有专门的线程模型,Python虚拟机使用GIL(GlobalInterpreterLock,全局解释器锁)来互斥线程对共享资源的访问,但暂时无法利用多处理器的优势。在Python中我们主要是通过thread和threading这两个模块来实现的,其中Python的threading模块是对thread做了一些包装的,可以更加方便的被使用,所以我们使用threading模块实现多线程编程。这篇文章我们主要来看看Python对多线程

系统 2019-09-27 17:50:59 1695

Python

Python split() 函数拆分字符串将字符串转化为列的方法

函数:split()Python中有split()和os.path.split()两个函数,具体作用如下:split():拆分字符串。通过指定分隔符对字符串进行切片,并返回分割后的字符串列表(list)os.path.split():按照路径将文件名和路径分割开一、函数说明1、split()函数语法:str.split(str="",num=string.count(str))[n]参数说明:str:表示为分隔符,默认为空格,但是不能为空('')。若字符串

系统 2019-09-27 17:50:49 1695

Python

python多线程

python多线程#创建线程threading_list=[]t1=threading.Thread(target=music,args=(u'爱情买卖',))threading_list.append(t1)t2=threading.Thread(target=move,args=(u'阿凡达',))threading_list.append(t2)fortinthreading_list:#启动线程t.setDaemon(True)#将线程声明为守护线

系统 2019-09-27 17:50:32 1695

Python

用Python中的wxPython实现最基本的浏览器功能

通常,大多数应用程序通过保持HTML简单来解决大多数浏览器问题�D或者说,根据最低共同特性来编写。然而,即便如此,也仍然存在字体和布局的问题,发行新浏览器和升级现有浏览器时,也免不了测试应用程序的痛苦。替代方案�D只支持一种浏览器�D通常不是一种用户友好的解决方案。明显的解决方案是在应用程序中嵌入自己的表现HTML的窗口构件。当然,从头开始编写这样的窗口构件工作量很大,因此,求助于预先封装的解决方案好象是合理的。商界有许多选择及几个开放源码软件包。本文将向

系统 2019-09-27 17:49:37 1695

Python

python 字符串追加实例

通过一个for循环,将一个一个字符追加到字符串中:方法一:string=''str=u"追加字符"foriinrange(len(str)):string+=str[i]printstring显示结果:追加字符方法二:string=[]str=u"1234"foriinrange(len(str)):string.append(str[i])printstring显示结果:[u'1',u'2',u'3',u'4']以上这篇python字符串追加实例就是小编

系统 2019-09-27 17:48:12 1695

Python

python框架中flask知识点总结

有很久没有更新我的博客了,在学习flask去了,别人都说flask不难,其实现在我也这么觉得,但是在刚接触的时候还是有点吃力的。在学习的过程中查阅了不少,也了解了许多,今天想做个总结。。。以免觉得学了那么久什么都没学到,还有防止以后忘记。一.关于装饰器,路由最开始接触的时候觉得好神奇,只会照着敲不知道怎么自己用起来@app.route(‘/')defhello:print(‘hello')注意:1.只有@这个东西是固定的,app是可以换的,这与蓝本中的定义

系统 2019-09-27 17:48:05 1695

Python

python 中的列表生成式、生成器表达式、模块导入

5.16列表生成式l=[]foriinrange(100):l.append('egg%s'%i)print(l)​l=['egg%s'%iforiinrange(100)]l=['egg%s'%iforiinrange(1000)ifi>10]print(l)5.17列表生成式与生成器表达式的应用names=['egon','alex_sb','wupeiqi','yuanhao','lxx']res=map(lambdax:x.upper(),name

系统 2019-09-27 17:48:05 1695