Python面向对象编程——异常处理一、什么是异常异常就是程序运行时发生错误的信号(在程序出现错误时,则会产生一个异常,若程序没有处理它,则会抛出该异常,程序的运行也随之终止),在python中,错误触发的异常如下:而错误分成两种1、语法错误(这种错误,根本过不了python解释器的语法检测,必须在程序执行前就改正)#语法错误示范一if#语法错误示范二deftest:pass#语法错误示范三classFoopass#语法错误示范四print(haha)2、
系统 2019-09-27 17:53:13 1879
Python中经常遇到这样那样的字符编码问题,尤其在处理网页源码时(特别是爬虫中):UnicodeDecodeError:‘XXX'codeccan'tdecodebytesinposition12-15:illegalmultibyte...每次看到上面这段文字的时候,感觉整个世界都昏暗了,然后就只能各种搜索找资料,过后就忘了。下次遇到时就让世界再昏暗一次。为了彻底解决这个拦路虎,今天咱们就好好的来唠嗑唠嗑。下面以汉字'哈'来解释作示例解释所有的问题,汉
系统 2019-09-27 17:53:00 1879
在学习过程中,把开发过程中重要的一些内容备份一下,下面内容是关于python实现中文繁体和中文简体之间的相互转换的内容,应该是对码农们有所好处。#转换繁体到简体line=Converter('zh-hans').convert(line.decode('utf-8'))line=line.encode('utf-8')#转换简体到繁体line=Converter('zh-hant').convert(line.decode('utf-8'))line=li
系统 2019-09-27 17:52:50 1879
首先我们从一个小程序导入,各定一个list,找出其中的素数,我们会这样写importmathdefis_Prims(number):ifnumber==2:returnTrue//除2以外的所有偶数都不是素数elifnumber%2==0:returnFalse//如果一个数能被除1和本身之外的数整除,则为合数。其实我们的判定范围到根号n就可以forcurinrange(2,int(math.sqrt(number))+1,2):ifnumber%cur=
系统 2019-09-27 17:52:34 1879
Python的字符串的特点Python与C语言,Java语言都不一样,没有单个字符,只有一个有一个字符的字符串。字符串对象不可修改,属于不可变类型字符串和列表,元组都从属于序列这个对象类别。所以序列支持的操作,字符串也支持。用单引号和双引号表示都行,并列的字符串串常量会自动合并,不需要显式的用加号表示。单双引号里面的特殊字符必须用转义序列表示,比如”,',\都需要在前面加个、,但是在三引号里面不需要转义。Python的字符串的支持的基本操作支持序列的操作,
系统 2019-09-27 17:52:13 1879
新人小菜鸟又来写博客啦!!!没人表示不开心~~(>_<)~~今天我来弄一个简单的关键词提取的代码文章内容关键词的提取分为三大步:(1)分词(2)去停用词(3)关键词提取分词方法有很多,我这里就选择常用的结巴jieba分词;去停用词,我用了一个停用词表。具体代码如下:importjiebaimportjieba.analyse#第一步:分词,这里使用结巴分词全模式text='''新闻,也叫消息,是指报纸、电台、电视台、互联网经常使用的记录社会、传播信息、反映
系统 2019-09-27 17:51:23 1879
本文实例为大家分享了python中的代码行数统计,供大家参考,具体内容如下思路:统计文件中代码的总行数减去空行单行注释以及多行注释功能:1.获取文件内容的总行数2.排除空行单行注释多行注释defcode_statistics(path):##打开这个文件withopen(path,'r',encoding='utf-8')asopenFile:#按列读取fileline=openFile.readlines()#给非代码行一个变量i=0#整个文件里面内容的
系统 2019-09-27 17:51:02 1879
在了解装饰器的之前一定要先了解函数作为参数传递,什么是函数内嵌,请参考我之前写的博客函数简介因为在python里面,函数也是对象,也可以作为参数进行传递.python装饰器本质也是一种特殊函数,它接收的参数是函数对象,然后动态地函数参数添加额外的功能,而不用修改原有的函数对象.python装饰器传入的参数是函数,返回的值也是函数!python装饰器思想有点类似设计模式的装饰模式,其意图是动态地给函数对象添加额外的功能.比如像增加日志打印的功能,有点面向切面
系统 2019-09-27 17:50:12 1879
python程序运行中,可由程序抛出异常。异常触发:使用raise命令抛出异常,即可使用异常基类Exception,也可使用自定义异常类(继承Exception类)。classPoint:def__init__(self,x,y):self.x=xself.y=y#DefineaclasstoraiseLineerrorsclassLineError(Exception):#继承自基类Exceptiondef__init__(self,ErrorInfo)
系统 2019-09-27 17:50:11 1879
*args和**kwargs是常用的两个参数*args:用于接受多余的未命名的参数,元组类型。**kwargs:用于接受形参的命名参数,字典类型的数据。可变参数args:deffun(n,*args):print(n)print(args)#未拆包print(*args)#进行拆包fun(1,2,3,4)结果:1(2,3,4)234形参中的*args是接受数据的args,它是一个元组,把传入的数据放进args元组中。函数中的args仍然是元组,*args就
系统 2019-09-27 17:48:57 1879
今天发现一个使用python写的管理cisco设备的小框架tratto,可以用来批量执行命令。下载后主要有3个文件:Systems.py定义了一些不同设备的操作系统及其常见命令。Connectivity.py是主要实现功能的代码,其实主要就是使用了python的pexpect模块。Driver.py是一个示例文件。[root@safetratto-master]#catdriver.py#!/usr/bin/envpythonimportConnectiv
系统 2019-09-27 17:48:20 1879
API:statuses/public_timeline返回最新的200条公共微博,返回结果非完全实时CODE:#!/usr/bin/python#-*-coding:utf-8-*-'''Createdon2014-7-3@author:guaguastd@name:statuses_public_timeline.py'''defpublic_timeline(weibo_api,count):#public_timeline=weibo_api.st
系统 2019-09-27 17:48:06 1879
1.首先定义一个log文件#-*-coding:utf-8-*-importosimporttimeimportloggingimportsyslog_dir1=os.path.join(os.path.dirname(os.path.dirname(__file__)),"logs")today=time.strftime('%Y%m%d',time.localtime(time.time()))full_path=os.path.join(log_di
系统 2019-09-27 17:47:58 1879
本文实例讲述了Python操作Mongodb数据库的方法。分享给大家供大家参考,具体如下:一导入pymongofrompymongoimportMongoClient二连接服务器端口号27017连接MongoDB连接MongoDB我们需要使用PyMongo库里面的MongoClient,一般来说传入MongoDB的IP及端口即可,第一个参数为地址host,第二个参数为端口port,端口如果不传默认是27017。conn=MongoClient("local
系统 2019-09-27 17:47:42 1879
类代码:#-*-coding:gbk-*-importosclassTABFILE:def__init__(self,filename,dest_file=None):self.filename=filenameifnotdest_file:self.dest_file=filenameelse:self.dest_file=dest_fileself.filehandle=Noneself.content=[]self.initflag=Falsesel
系统 2019-09-27 17:47:28 1879