python
python
Aa. NiceMan
这个作者很懒,什么都没留下…
展开
-
单例设计模式
单例设计模式设计模式设计模式是前人工作的总结和提炼,通常,被人们广泛流传的设计模式都 是针对某一特定问题的成熟解决方案使用设计模式是为了可重用代码,让代码更容易被他人理解, 保证代码可靠性== 单例设计模式==目的:让类创建对象,在系统中只有唯一的一个实例(对象)每一次执行类名()返回的对象 内存地址是相同的我们用类名的方式创建对象的时候,python解释器会帮我们做两件事情,是哪两...原创 2020-01-18 13:55:15 · 106 阅读 · 0 评论 -
私有属性和私有方法
私有属性和私有方法class Student(object): def __init__(self,name,score): # 前面带两个下划线表示对变量进行私有化 # 外部不能随便的访问和更改 self.__name = name self.__score = score def get_grand(self)...原创 2020-01-18 13:49:54 · 169 阅读 · 0 评论 -
静态方法
静态方法class Cat(object): @staticmethod def call(): print('喵喵~')# 静态方法:通过 类名. 调用静态方法# 不需要创建对象 直接就可以调用Cat.call()...原创 2020-01-18 13:48:14 · 140 阅读 · 0 评论 -
类属性类方法
类属性类方法类属性:针对类对象定义的属性 使用赋值语句在class关键字下可以定义类属性类方法:针对类对象定义的方法 在类方法内部可以直接访问类属性或者调用其他的类方法class Toy(object): # 使用赋值语句 记录所有的玩具数量 count = 0 def __init__(self,name): self.name = name ...原创 2020-01-18 13:47:30 · 209 阅读 · 0 评论 -
面向对象(oop)
1 面向过程和面向对象(oop:object oriented programming)面向过程:—侧重于怎么做?1.把完成某一个需求的 所有步骤 从头到尾 逐步实现2.根据开发要求,将某些功能独立的代码封装成一个又一个函数3.最后完成的代码,就是顺序的调用不同的函数特点:1.注重步骤和过程,不注重职责分工2.如果需求复杂,代码变得非常复杂3.开发复杂的项目的时候,没有固定的套路,...原创 2020-01-17 21:28:22 · 394 阅读 · 0 评论 -
paramiko
paramikoimport paramikotransport = paramiko.Transport('172.25.254.54',22)transport.connect(username='root',password='westos')sftp = paramiko.SFTPClient.from_transport(transport)# 上传文件# sftp.put...原创 2020-01-17 20:26:24 · 334 阅读 · 0 评论 -
Redis
Redis什么是Redis?REmote DIctionary Server(Redis) 是一个key-value存储系统。使用ANSI C语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API(python, php, java…)。它通常被称为数据结构服务器,因为值(value)可以是 字符串(String), 哈希(Map...原创 2020-01-17 20:22:14 · 145 阅读 · 0 评论 -
mysql
mysqlimport pymysql1.连接数据库conn = pymysql.connect(host='localhost', user='root', password='redhat', db='westos', ...原创 2020-01-04 17:30:58 · 181 阅读 · 0 评论 -
装饰器
装饰器把一个函数当作参数传递给另一个函数 返回一个替代版的函数本质上就是一个返回函数的函数在不改变原函数的基础上 给函数增加功能def add_one(number): return number + 1a = add_one(2)print(a)函数可以作为参数被传递# def say_hello(name):# return f"Hello {name}"...原创 2020-01-04 17:21:08 · 118 阅读 · 0 评论 -
table的应用
from prettytable import PrettyTablefield_names = ("ID",'名字','英语成绩','Python成绩','C语言成绩')table = PrettyTable(field_names=field_names)print(table)原创 2020-01-03 16:13:31 · 140 阅读 · 0 评论 -
re模块
re模块inputStr = 'hello 123 world 456'# replaceStr = inputStr.replace('111','222')# print(replaceStr)replaceStr = re.sub('\d+','222',inputStr)print(replaceStr)"""\d:匹配任意一个数字 包括[0-9]和其他数字字符\D:(\d...原创 2020-01-03 16:12:30 · 134 阅读 · 0 评论 -
difflib模块之文本对比
difflib模块之文本对比什么是difflib? 用来做什么?difflib为python的标准库模块,无需安装。作用是对比文本之间的差异。并且支持输出可读性比较强的HTML文档,与Linux下的diff命令相似。在版本控制方面非常有用。2符号理解符号含义‘-’包含在第一个系列行中,但不包含第二个。‘+’包含在第二个系列行中,但不包含第一个。...原创 2020-01-03 16:06:15 · 183 阅读 · 0 评论 -
时间模块
时间模块时间表示的几种形式1.时间戳2.字符串时间3.元组类型的时间import osimport time1.时间戳print(time.time())2.字符串时间print(time.ctime())3.元组时间print(time.localtime())info = time.localtime()print(info)print(info.tm_year)...原创 2020-01-03 15:53:16 · 115 阅读 · 0 评论 -
os模块
os模块import os1 返回操作系统类型返回值:posix是linux操作系统返回值:nt是windows操作系统print(os.name)print('Linux' if os.name== 'posix' else 'Windows')2.操作系统的详细信息info = os.uname()print(info)print(info.sysname)print(i...原创 2020-01-03 15:35:21 · 172 阅读 · 0 评论 -
上下文管理器
上下文管理器上下文管理器 打开文件 执行完with语句后 自动关闭该文件f = open('/tmp/passwd')with open('/tmp/passwd') as f: print(f.read())print(f.closed)原创 2019-12-25 20:02:33 · 111 阅读 · 0 评论 -
文件
文件纯文本文件文件的操作:打开—>操作—>关闭r(readonly)默认参数只能读 不能写,读取文件不存在 会报错w写文件(write only)文件存在时,会清空文件的内容并写入新的文件内容,文件不存在,会创建新的文件并写入内容a写文件(write only)不会清空文件内容 会在文件末尾追加,文件不存在的时候,不会报错 会创建新的文件并写入内容...原创 2019-12-25 20:01:42 · 95 阅读 · 0 评论 -
高阶函数
高阶函数实参是一个函数,函数的返回值也是一个函数函数本身也是可以赋值给变量的 变量可以指向函数print(abs(-10))f = abs #f=1print(f(-10))def fun(x,y,f): return f(x),f(y)print(fun(-10,34,abs))内置高阶函数map():接收两个参数 一个是函数 一个是序列map将传入的函数依次作用到...原创 2019-12-25 19:37:47 · 108 阅读 · 0 评论 -
字典生成式
字典生成式import randomstuInfo = {}for i in range(20): name = 'westos' + str(i) score = random.randint(60, 100) stuInfo[name] = scoreprint(stuInfo)highscore = {}for name, score in stuInf...原创 2019-12-24 19:12:28 · 107 阅读 · 0 评论 -
列表生成式
列表生成式生成一个列表,列表元素分别为[11,22…9**9]li = []for i in range(1, 10): li.append(i ** i)print(li)print([i ** i for i in range(1, 10)])print([i ** i for i in range(1, 10) if i % 2 == 0])找出1~10之间的所有偶...原创 2019-12-24 19:07:45 · 170 阅读 · 0 评论 -
深拷备和浅拷备
深拷备和浅拷备当一个 变量=x 的时候,约定为:指向地址的过程浅拷备:copy.copy() 想给一个变量获取一个和另一个变量相同的值的时候,但是拥有自己独立的内存地址空间的时候,可以使用copy.copy()模块,但是如果另一个变量是不可变数据类型的时候,浅拷备不生效 (只拷备最外层:内存地址中的数据依然是引用)请简述赋值, 深拷贝和浅拷贝的区别?(python中如何拷贝一个对象?)...原创 2019-12-24 18:49:20 · 365 阅读 · 0 评论 -
is和==的区别
is和==的区别id():在内存中存储的位置type():变量的类型==:type valueis:type value id原创 2019-12-24 18:04:30 · 127 阅读 · 0 评论 -
函数
函数定义一个函数:def hello(): print('hello') print('python')通过函数名来调用函数:hello()def westos(): print('it is westos') def python(): print('is python') python()westos()定义函数的时候的变量...原创 2019-12-24 17:55:35 · 150 阅读 · 0 评论 -
安装python3和pycharm
Python3安装原创 2019-12-12 10:40:05 · 144 阅读 · 0 评论 -
判断语句if
判断语句ifif 要判断的条件(True):条件成立的时候,要做的事情else:条件不成立的时候要做的事情 if 90 < score <= 100: grade = 'A' elif 80 < score <= 90: grade = 'B' else: grade = 'C' print(grade)...原创 2019-12-12 11:27:54 · 135 阅读 · 0 评论 -
循环语句for
循环语句forrange():内置python函数range(start,stop):start~stop-1range(stop):0~stop-1range(start,stop,step):start~stop step:为步长求1~100之和求1~100的奇数的和求1~100的偶数的和利用for循环求阶乘num = int(input('Num:'))res = 1定...原创 2019-12-12 11:41:54 · 141 阅读 · 0 评论 -
字符串
字符串1.字符串的定义a = 'westos'b = "westos's"c = 'what\'s'd=""" 用户管理系统 1.添加用户 2.擅长用户 3.显示用户 """2.字符串的特性s = ‘hello’索引:0 1 2 3 4 索引从0开始print(s[0])print(s[4])print(s[-1]) # 拿出最后一个字符切...原创 2019-12-12 17:16:22 · 171 阅读 · 0 评论 -
列表
列表1.列表的创建list = [1,1.2,True,'westos']print(list,type(list))列表里也可以嵌套列表list2 = [1,2,3,4,[1,1.2,True,'westos']]print(list2,type(list2))2.列表的特性service = [‘http’,‘ftp’,‘ssh’]索引: 正向索引print(service...原创 2019-12-12 19:49:07 · 145 阅读 · 0 评论 -
循环语句while
循环语句whilewhile 条件满足:语句1~~~else:全部循环结束后 要执行的语句原创 2019-12-12 19:52:36 · 129 阅读 · 0 评论 -
综合练习
设计一个程序,帮助小学生练习10以内的加法详情:随机生成加法题目;学生查看题目并输入答案;判别学生答题是否正确?退出时, 统计学生答题总数,正确数量及正确率(保留两位小数点);小学生算术能力测试系统:设计一个程序,用来实现帮助小学生进行百以内的算术练习,它具有以下功能:提供10道加、减、乘或除四种基本算术运算的题目;练习者根据显示的题目输入自己的答案,程序自动判断输...原创 2019-12-12 19:55:09 · 187 阅读 · 0 评论 -
元组
元组列表:打了激素的数组元组:带了紧箍咒的列表不可变的数据类型 没有增删改可以存储任意数据类型1.定义一个元组t = (1,1.2,True,'westos')print(t,type(t))如果元组里面包含可变的数据类型 可以间接的去修改元组的内容t1 = ([1,2,3],7,8,9)print(t1,type(t1))t1[0].append(4)print(t1)...原创 2019-12-19 11:32:01 · 118 阅读 · 0 评论 -
集合
集合集合里面的元素不可重复s = {1, 1, 1, 1, 1, 3, 5, 67, 89}print(s,type(s))定义一个空集合s1 = {}print(type(s1)) # 默认情况下是dicts2 = set([])print(s2,type(s2))== 列表的快速去重==li = [1,23,4,5,6,6,6,7,8,9]print(list(set(l...原创 2019-12-19 11:48:06 · 145 阅读 · 0 评论 -
python中常用的内置方法
python中常用的内置方法最大值最小值以及求和:枚举:返回索引值和对应的value值for i,v in enumerate('hello'): print(i,v) print(str(i) + '---->' + v)zips1 = '123's2 = 'ABC'for i in zip(s1,s2): print(i) for i i...原创 2019-12-19 11:51:59 · 103 阅读 · 0 评论 -
字典
字典s = {}print(s,type(s))字典:k v 键值对的形式存在的s = { 'linux':[100,99,89], 'python':[90,99,100] }print(s,type(s))工厂函数d = dict()print(d,type(d))d = dict(a=1,b=2)print(d,type(d))字典的嵌套stu...原创 2019-12-19 16:31:51 · 220 阅读 · 0 评论