
python
新是一切的根源
人生天地间 忽如远行客
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
深入理解Python中range和xrange的区别
两种用法介绍如下1. range([start], stop[, step])返回等差数列。构建等差数列,起点是start,终点是stop,但不包含stop,公差是step。start和step是可选项,没给出start时,从0开始;没给出step时,默认公差为1。>>> range(10) #起点是0,终点是10,但是不包括10[0, ...原创 2020-03-01 21:19:37 · 270 阅读 · 1 评论 -
python之迭代器、生成器、闭包、装饰器
1.迭代(循环)器 iterator我们已经知道,可以直接作用于for循环的数据类型有以下几种:(1)一类是集合数据类型,如list,tuple,dict,set,str等(2)一类是generator,包括生成器和带yield的generator function;生成器不但可以作用于for循环,还可以被next()函数不断调用并返回下一个值,直到最后抛出StopIteration错误表...原创 2020-03-01 21:13:25 · 503 阅读 · 0 评论 -
python面向对象中的单例设计模式
1. 设计模式和单例设计模式(1)设计模式设计模式 设计模式是前人工作的总结和提炼,通常,被人们广泛流传的设计模式都 是针对某一特定问题的成熟解决方案 使用设计模式是为了可重用代码,让代码更容易被他人理解, 保证代码可靠性(2)单例设计模式单例设计模式 目的:让类创建对象,在系统中只有唯一的一个实例(对象) 每一次执行类名()返回的对象 内存地址是相同的2. 单例设计模...原创 2020-01-19 16:18:50 · 153 阅读 · 0 评论 -
python面向对象之私有属性和私有方法
1. 私有属性和私有方法前面带两个下划线表示对变量进行私有化外部不能随便的访问和更改class Student(object): def __init__(self,name,score): # 前面带两个下划线表示对变量进行私有化 # 外部不能随便的访问和更改 self.__name = name self.__sco...原创 2020-01-19 16:09:34 · 392 阅读 · 0 评论 -
python面向对象之类属性、类方法以及静态方法
1. 类属性和类方法类属性:针对类对象定义的属性 使用赋值语句在class关键字下可以定义类属性类方法:针对类对象定义的方法 在类方法内部可以直接访问类属性或者调用其他的类方法2. 类属性和类方法示例class Toy(object): # 使用赋值语句 记录所有的玩具数量 count = 0 def __init__(self,name): sel...原创 2020-01-19 16:03:52 · 278 阅读 · 0 评论 -
python面向对象之多态
1. 多态多态(以封装和继承为前提)不同的子类对象调用相同的方法 产生不同的执行结果2. 多态示例class Dog(object): def __init__(self,name): self.name = name def game(self): print('%s 开心的玩耍~' %(self.name))class Gaifei(...原创 2020-01-19 15:55:53 · 215 阅读 · 0 评论 -
python面向对象之继承
1. 继承继承具有传递性当父类方法的实现不能满足子类的需求的时候可以对父类方法进行重写1.覆盖父类方法2.对父类的方法进行扩展2. 继承示例class Animal: def eat(self): print('吃!!!') def drink(self): print('喝!!!') def run(self): ...原创 2020-01-19 15:03:01 · 178 阅读 · 0 评论 -
python面向对象之封装
1. 封装封装1.封装是面向对象编程的一大特点2.面向对象编程的第一步 将属性和方法封装到一个抽象的类中3.外界使用类创建对象,然后让对象调用方法4.对象方法的细节都被封装在类的内部2. 封装示例1需求(1)1.小明体重75.0公斤2.小明每次跑步都会减肥0.5公斤3.小明每次吃东西体重都会增加1公斤需求(2)1.小明和小美都爱跑步2.小美体重45.0公斤2.每次跑步...原创 2020-01-19 14:42:08 · 158 阅读 · 0 评论 -
类的初始化方法、__str__以及__del__方法
1. 类的初始化方法__init__初始化方法:类名() 就可以创建一个对象类名() 创建对象的时候,python解释器会自动执行以下操作1.为对象在内存中分配空间–创建对象2.调用初始化方法为对象的属性设置初始值这个初始化方法是内置方法,是专门用来定义一个类据有哪些属性和方法的class Cat: def __init__(self,name): self....原创 2020-01-19 13:48:05 · 1057 阅读 · 0 评论 -
Python中面向对象的基础知识
1. 面向过程 VS 面向对象(1) 面向过程:—侧重于怎么做?1.把完成某一个需求的 所有步骤 从头到尾 逐步实现2.根据开发要求,将某些功能独立的代码封装成一个又一个函数3.最后完成的代码,就是顺序的调用不同的函数特点:1.注重步骤和过程,不注重职责分工2.如果需求复杂,代码变得非常复杂3.开发复杂的项目的时候,没有固定的套路,开发难度很大(2)面向对象:----侧重于谁来...原创 2020-01-19 13:13:22 · 193 阅读 · 0 评论 -
python之基于ssh服务的paramiko模块
1. 使用基于ssh服务的paramiko模块远程连接主机原创 2020-01-19 11:36:29 · 382 阅读 · 0 评论 -
python操作Redis数据库
1. 什么是RedisREmote DIctionary Server(Redis) 是一个key-value存储系统。使用ANSI C语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API(python, php, java…)。它通常被称为数据结构服务器,因为值(value)可以是 字符串(String), 哈希(Map), ...原创 2020-01-19 10:40:58 · 203 阅读 · 0 评论 -
python中的异常处理
1. 常见的异常print(10/0)ZeroDivisionError: division by zerostr = 'hello'print(str[10])IndexError: string index out of ranged = dict(a=1,b=2)d = { 'a':1, 'b':2}print(d.get('c','key不存在'))...原创 2020-01-04 19:14:33 · 167 阅读 · 0 评论 -
python之时间处理模块
1. 时间表示的几种形式1.时间戳2.字符串时间3.元组类型的时间import osimport time# 1.时间戳print(time.time())# 2.字符串时间print(time.ctime())# 3.元组时间print(time.localtime())info = time.localtime()print(info)print(info....原创 2020-01-04 19:13:22 · 250 阅读 · 0 评论 -
python中的eval内置函数
1. 字符串转换成列表a = "[[1,2],[3,4]]"print(type(a))b = eval(a)c = list(a)print(type(b))print(type(c))print(b)print(c)2. 字符串转换成字典a = "{1:'a',2:'b'}"print(type(a))b = dict(eval(a))print(type(b))...原创 2020-01-04 19:09:56 · 227 阅读 · 0 评论 -
python之re模块和table的应用
1. re模块替换字符串中的数字为指定字符import reinputStr = 'hello 123 world 456'# replaceStr = inputStr.replace('111','222')# print(replaceStr)replaceStr = re.sub('\d+','23332',inputStr)print(replaceStr)\d:...原创 2020-01-04 18:45:19 · 195 阅读 · 0 评论 -
python中查看操作系统基本信息的操作
1. 返回操作系统类型posix表示linux操作系统nt表示windows操作系统2. 操作系统详细信息原创 2020-01-04 17:02:50 · 625 阅读 · 0 评论 -
python之操作系统相关练习
题目要求:在当前目录新建目录img, 里面包含多个文件, 文件名各不相同(X4G5.png)将当前img目录所有以.png结尾的后缀名改为.jpgimport randomimport stringimport osdef gen_code(len=4): # 随机生成四位随机数 li = random.sample(string.ascii_letters+st...原创 2020-01-04 16:28:47 · 181 阅读 · 0 评论 -
Python中对操作系统的常见操作
1.判断是否为绝对路径import osprint(os.path.isabs('/xin/westos.txt'))print(os.path.isabs('westos.txt'))2.生成绝对路径import osprint(os.path.abspath('westos.txt'))print(os.path.join('/home/kiosk','westos.txt'...原创 2020-01-04 15:36:33 · 230 阅读 · 0 评论 -
Python操作MySQL数据库
1. 创建数据表import pymysql# 1.连接数据库conn = pymysql.connect(host='localhost', user='root', password='westos', db='redhat', ...原创 2019-12-31 15:21:04 · 225 阅读 · 0 评论 -
Python中使用difflib来对比文件的不同
1.difflib对比结果中特殊字符的含义如下‘+’ 包含在第二个系列行中,但不包含第一个‘-’ 包含在第一个系列行中,但不包含第二个’ ’ 两个系列行一致‘?’ 存在增量差异‘^’ 存在差异字符2. linux文件对比import difflibwith open('/mnt/passwd') as f1,open('/mnt/passwd1'...原创 2019-12-31 13:52:02 · 270 阅读 · 0 评论 -
python之装饰器
装饰器:把一个函数当作参数,返回一个替代版的函数本质上就是返回函数的函数即:再不改变原函数的基础上,给函数增加功能1.如何实现,在不改变函数功能的基础上,在fun函数输出之前输出‘~~~~~’# 这是给定的函数def fun(): print('hello python') # 定义装饰器函数,增加功能def outer(a): def inner...原创 2019-12-31 12:18:07 · 262 阅读 · 0 评论 -
Python中和文件相关的练习题
练习一:创建文件data.txt,共100000行,每行存放一个1~100之间的整数import randomf = open('data.txt','w+')for i in range(100000): f.write(str(random.randint(1,100)) + '\n')f.seek(0,0)print(f.read())f.close()练习...原创 2019-12-26 15:10:55 · 993 阅读 · 0 评论 -
Python中使用seek方法来移动文件指针的位置
1.什么是文件指针使用文件指针来指定文件当前的位置python中可以使用seek()移动文件指针到指定位置,然后进行读/写通常配合 r+ 、w+、a+ 模式2.seek方法的讲解seek第一个参数是偏移量:>0,代表向右移动,<0,代表向左移动seek第二个参数是:0 移动指针到文件开头1 不移动指针2 移动指针到末尾...原创 2019-12-26 14:37:55 · 1633 阅读 · 0 评论 -
python中非纯文本文件的读取
1. 非纯文本文件的读取读取图片,音频或视频(非纯文本文件),需要以二进制的方式读取或写入将一张图片放到当前路径下##读二进制文件内容f1 = open('hello.jpg',mode='rb')content = f1.read()f1.close()##将内容写入到新的文件中f2 = open('westos.jpg',mode='wb')f2.write(conten...原创 2019-12-26 14:29:36 · 302 阅读 · 0 评论 -
Python中文件的多种读取操作
1.read(), readline() 和readlines() 的基本用法read():读取文件内容,返回文件的所有内容readline():一行一行的读取文件的内容readlines():读取文件内容,返回一个列表,列表里的元素分别为文件每行的内容f=open('D:/westos.txt')print(f.read()) #最基本的读取方式,可以读取文件的所有内容print(...原创 2019-12-26 14:22:35 · 226 阅读 · 0 评论 -
Python中文件的基本操作
1. r操作:(如果不写对文件的操作方式,默认情况下是r) r: -只能读,不能写 -读取文件不存在,报错f=open('C:/伪代码.docx')print(f.readable())print(f.writable())f.close接下来对文件进行读操作:f=open('D:/westos.txt')print(f.read())2. r+操作:r+...原创 2019-12-26 14:04:28 · 673 阅读 · 0 评论 -
字符串相关内容(生成验证码)
1. 生成验证码生活中,内推码一般由大写字母、小写字母和数字这三种字符构成因此先将字母和数字的库导入import random #导入生成随机数包import string #导入字符包code = string.ascii_letters + string.digits #获取所有大小写字母和数字0~9并且是字符串的格式print(code)随机生成6位内推码,由字母和数...原创 2019-12-26 13:02:25 · 405 阅读 · 0 评论 -
python中的匿名函数
1. 匿名函数的定义在Python语言中除了def语句用来定义函数之外,还可以使用匿名函数lambda,它是Python一种生成函数对象的表达式形式。匿名函数通常是创建了可以被调用的函数,它返回了函数,而并没有将这个函数命名。普通函数需要去依靠函数名去调用,而匿名函数没有,所以需要把这个函数对象复制给某个变量进行调用lambda有时被叫做匿名函数也就是这个原因,需要一个函数,又不想动脑筋去...原创 2019-12-26 11:39:02 · 945 阅读 · 0 评论 -
python中的高阶函数
1. 高阶函数的定义实参是一个函数名-函数的返回值是一个函数def fun(a,b): return a+b## a = fun(1,2)# print(a)定义一个函数,传入形参a,b,返回a+b的值,调用函数,传递实参,并且将返回的值赋给a变量,打印出来,其结果为3函数本身也可以赋值给变量,变量可以指向函数f = absprint(f(-10))print...原创 2019-12-26 11:24:05 · 850 阅读 · 0 评论 -
python中的字典生成式
1. 示例1:选出20个学生中成绩在90分以上的学生需求:假设有20个学生,学生名为westosX,学生分数在60-100之间#选出成绩在90分以上的学生import random #定义一个生成随机数的包 stuInfo = {} #定义一个空字典,用来存储学生信息 for i in range(20): #i从0到19 name = 'westos' + st...原创 2019-12-25 14:11:38 · 1011 阅读 · 0 评论 -
python中的列表生成式
1. 什么是列表生成式列表生成式即List Comprehensions,是Python内置的非常简单却强大的可以用来创建list的生成式列表生成式也可以叫做列表解析列表生成式的格式:[expression for i in 序列 if…]==表达式+循环+条件一般情况下循环太繁琐,而列表生成式则可以用一行语句代替多行循环生成列表运用列表生成式,可以写出非常简洁的代码运用列表生成式,可...原创 2019-12-25 13:50:47 · 1529 阅读 · 0 评论 -
Python中is和==的区别
Python中is和==的区别在讲is和==这两种运算符区别之前,首先要知道Python中对象包含的三个基本要素,分别是:id(身份标识)、type(数据类型)和value(值)。is和==都是对对象进行比较判断作用的,但对对象比较判断的内容并不相同。(1)==是python标准操作符中的比较操作符,用来比较判断两个对象的value(值)是否相等,例如下面两个字符串间的比较:例1>...原创 2019-12-25 13:24:53 · 204 阅读 · 0 评论 -
python中函数的返回值及变量的作用域
1. 函数返回值的定义返回值:函数运算的结果,当还需要进一步操作是,用return来返回函数的执行结果,如果没有返回值,默认为None一旦遇到return,函数执行结束,后面的代码不会执行print 和 return 的区别,print 仅仅是打印在控制台,而 return 则是将 return 后面的部分作为返回值作为函数的输出可以用变量接走,继续使用该返回值做其它事函数需要先定义后...原创 2019-12-25 13:02:51 · 697 阅读 · 0 评论 -
python中函数的定义及参数介绍
1. 函数的定义函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段函数能提高应用的模块性,和代码的重复利用率Python提供了许多内建函数,比如print()。但你也可以自己创建函数,这被叫做用户自定义函数其实函数就是可以实现某一个功能的代码块,下次使用的时候直接调用函数就行2. 函数的创建定义一个函数,你可以定义一个有自己想要功能的函数,以下是简单的规则:函数代码块...原创 2019-12-25 12:24:30 · 1821 阅读 · 0 评论 -
python中字典的定义,特性及示例
1. 字典的定义字典是一个无序的数据集合通常输出顺序和定义顺序不一样users = ['user1','user2']passwds = ['123','456']print(zip(users,passwds))print(list(zip(users,passwds)))print(dict(zip(users,passwds)))d = {} #用花括号定义一个空字...原创 2019-12-17 18:54:18 · 1222 阅读 · 0 评论 -
python中集合的定义,特性,常用方法及示例
1. 集合的定义集合里面的元素是不可重复的s = {1,2,3,1,2,3,4,5}print(s)print(type(s))如何定义一个空集合# s2 = {}# print(type(s2))s3 = set([])print(s3)print(type(s3))可以看到,集合有去重的作用集合应用li = [1,2,3,1,2,3]print(list(s...原创 2019-12-17 13:44:58 · 1083 阅读 · 0 评论 -
python中元组的创建,特性及应用
1. 元组的创建元组:元组本身是不可变数据类型,没有增删改查元组可以存储任意数据类型t = (1,2.3,'westos',True) #定义一个元组print(t,type(t)) #打印这个元组和类型元组里包含可变数据类型,可以间接修改元组内容t1 = ([1,2,3],4)t1[0].append(5) #在索引0处追加一个5元素print(t1)...原创 2019-12-17 13:17:04 · 641 阅读 · 0 评论 -
python中常用的内置方法
1. 求最小值In [1]: min(2,3,4,5) Out[1]: 22. 求最大值In [2]: max(2,3,4,5) Out[2]: 53. 求和In [3]:...原创 2019-12-17 12:48:12 · 161 阅读 · 0 评论 -
python中列表(List)元素的增加, 删除,修改和查看
1. python中列表元素的增加service = [‘http’,‘ftp’,‘ssh’]# append():追加一个元素到列表service.append('firewalld')print(service)# extend():拉伸 追加多个元素到列表service.extend(['mysql','nfs'])print(service)# insert(): ...原创 2019-12-17 11:26:39 · 4257 阅读 · 0 评论