Python

Python爬虫正则表达式常用符号和方法

正则表达式并不是Python的一部分。正则表达式是用于处理字符串的强大工具,拥有自己独特的语法以及一个独立的处理引擎,效率上可能不如str自带的方法,但功能十分强大。得益于这一点,在提供了正则表达式的语言里,正则表达式的语法都是一样的,区别只在于不同的编程语言实现支持的语法数量不同;但不用担心,不被支持的语法通常是不常用的部分。1、常用符号.:匹配任意字符,换行符\n除外:匹配前一个字符0次或无限次?:匹配前一个字符0次或1次.*:贪心算法,尽可能的匹配多

系统 2019-09-27 17:46:41 2422

Python

Python中声明只包含一个元素的元组数据方法

调试程序的时候,就吃过这个亏,不知道为何Python使用括号做元组声明边界符,估计是找不到合适的符号了。中括号用来声明列表,花括号用来声明字典,元组号只能用括号来声明了。有其他语言编程经历的朋友都清楚括号在其它语言里都是表示优先级,而Python也可以用来表示优先级,所以也就引发了以下白痴的问题。复制代码代码如下:#encoding=UTF-8obj=('tuple')printobjprinttype(obj)printlen(obj)执行结果复制代码代

系统 2019-09-27 17:46:11 2422

编程技术

Trees in SQL: Nested Sets and Materizlized P

byVadimTropashko翻译:JanwerZhang原文链接:TreesinSQL:NestedSetsandMaterizlizedPath关系数据库通常被认为是在其先辈网络和分层模型上的进步发展。在每个层级查询方面,当模型转换成依赖关系时,他们结果是惊人地不完整。几乎每两三个月总有关于如何在数据库中建立树模型的问题弹出在comp.database.theory新闻组。在本文中我将探讨两者用四个众所周知的方法的实现,并展示它们之间的关联。我们将找

系统 2019-08-29 23:34:19 2422

编程技术

微博是这样炼成的:山寨QQ项目源码下载大全~

下载中的项目源码系《微博是这样炼成的:从聊天室到Twitter的技术实现》一书中山寨QQ项目源码和文档:第2章JavaKe:典型IM系统的实现702.1大话通信协议702.1.1理解通信协议的概念702.1.2定义文件传输协议并实现712.1.3实现文本/文件传送服务器732.1.4实现文本/文件传送客户端762.2JavaKe通信协议分析782.2.1通信消息流程782.2.2通信数据格式协议812.2.3具体消息体结构定义822.3关键技术点分析852

系统 2019-08-29 23:28:36 2422

编程技术

围绕EMF探索(5)之深入Validation框架

前索引:围绕EMF探索(1)之存储和查询前索引:围绕EMF探索(2)之再探查询组件前索引:围绕EMF探索(3)之初探OCL前索引:围绕EMF探索(4)之Validation组件图围绕EMF探索(5)之深入Validation框架在EMF的eCore框架中,本身提供了对ValidationFramework的支持,而EMFT的Validation组件则是在这个基础上又扩展的大量的功能。如果大家采用ValidatorAdaptor方式,可能会更加体会到对Eva

系统 2019-08-29 23:20:23 2422

Python

get random number in python

Helponmethodrandintinmodulerandom:randint(self,a,b)methodofrandom.RandominstanceReturnrandomintegerinrange[a,b],includingbothendpoints.reference:http://bytes.com/topic/python/answers/466655-how-pop-random-item-listgetrandomnumberi

系统 2019-08-29 22:48:28 2422

编程技术

珠三角技术沙龙第 4 期总结(含照片、ppt 和视

赖勇浩(http://laiyonghao.com)号外:第5期活动报名即将开始,敬请留意。2009年12月19日,珠三角技术沙龙移师深圳,成功在深圳发展银行大厦由深圳众禄投资顾问有限公司(www.jjmmw.com)赞助的场地举行,大约来自有70名珠三角的技术人员参加了活动,其中东道主基金买卖网的CTO韦光京先生(python-cn社区的ID为vcc)作了题为《Django高级应用》的报告,另一场是由腾讯广州远道前往的邝宇恒做的《大型架构介绍》,两个高质

系统 2019-08-29 22:46:36 2422

编程技术

Struts2讲义33

7.2类型转换发生异常处理方案类型转换说明白点也就是调用某些Struts2已经定义的Java代码。不过只要由Java这门语言书写的程序都不可避免异常处理。因此万一在类型转换中发生异常,必须要快速解决它。本节就介绍笔者日常中对类型转换的异常进行处理的一些办法和方案。7.2.1Struts2自带异常提示技术要点Struts2自带对于类型转换发生异常错误时候提示。无任何操作时的错误提示。输入fielderror标签时的错误提示。演示代码使用7.1.1示例代码没有

系统 2019-08-29 22:42:10 2422

编程技术

log4j和spring的配置文件位置----J2SE

在j2se和j2ee中,log4j和spring的配置文件,默认都是在src也就是classpath下面.但程序要发布的时候,通常src下面的文件会打包.因此修改配置文件每次都要打包一次,很不方便,有没有办法,把配置文件防在包外面呢?如果你有这个需求,那么本文就非常适合你.^-^1)spring配置文件applicationContext.xml的位置,把他放在project下面以后,我们需要通过下面的方法来获取,而不是原先的ClassPathXmlApp

系统 2019-08-29 22:27:42 2422

编程技术

Struts2中的拦截器的内部结构

让我们再来回顾一下之前我们曾经用过的一张ActionLifeCycle的图:图中,我们可以发现,Struts2的Interceptor一层一层,把Action包裹在最里面。这样的结构,大概有以下一些特点:1.整个结构就如同一个堆栈,除了Action以外,堆栈中的其他元素是Interceptor2.Action位于堆栈的底部。由于堆栈"先进后出"的特性,如果我们试图把Action拿出来执行,我们必须首先把位于Action上端的Interceptor拿出来执行

系统 2019-08-29 22:25:43 2422

编程技术

Shell 的昨天今天和明天

Shell的昨天今天和明天昨天的命令是:yesterdayformat=`date--date='yesterday'"+%Y-%m-%d_%H:%M:%S"`echo$yesterdayformat输出格

系统 2019-08-29 22:21:09 2422

编程技术

Mybatis中配置Mapper的方法

Mybatis中配置Mapper的方法在这篇文章中我主要想讲一下Mybatis配置文件中mappers元素的配置。关于基础部分的内容可以参考http://haohaoxuexi.iteye.com/blog/1333271。我们知道在Mybatis中定义Mapper信息有两种方式,一种是利用xml写一个对应的包含Mapper信息的配置文件;另一种就是定义一个Mapper接口,然后定义一些相应的操作方法,再辅以相应的操作注解。现假设我有这样一个实体类:pac

系统 2019-08-29 22:19:45 2422

编程技术

Http协议原理学习

HTTP协议用于在Internet上发送和接收消息。HTTP协议是一种请求-应答式的协议——客户端发送一个请求,服务器返回该请求的应答,所有的请求与应答都是HTTP包。HTTP协议使用可靠的TCP连接,默认端口是80。HTTP的第一个版本是HTTP/0.9,后来发展到了HTTP/1.0,现在最新的版本是HTTP/1.1。HTTP/1.1由RFC2616定义。在HTTP中,Client/Server之间的会话总是由客户端通过建立连接和发送HTTP请求包初始化

系统 2019-08-29 22:14:08 2422

Python

python cumsum函数的具体使用

这个函数的功能是返回给定axis上的累计和函数的原型如下:详见docnumpy.cumsum(a,axis=None,dtype=None,out=None)Returnthecumulativesumoftheelementsalongagivenaxis.官方的文档是没有详细解释,本人做了测试自己把理解的写下。1.对于一维输入a(可以是list,可以是array,假设a=[1,2,3,4,5,6,7],就是当前列之前的和加到当前列上,如下:>>>imp

系统 2019-09-27 17:54:38 2421

Python

Python 持久化模块pickle和joblib

在程序运行的过程中,所有的变量都是在内存中,有时候希望将对象存储下来。我们把对象从内存中变成可存储或传输的过程称之为序列化,在Python中叫pickling。picklePython提供两个模块来实现序列化:cPickle和pickle。这两个模块功能是一样的,区别在于cPickle是C语言写的,速度快,pickle是纯Python写的,速度慢。将对象保存为字符串importpicklea1=['abc',[1,2],{'x':3}]s1=pickle.

系统 2019-09-27 17:53:47 2421