![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
python
python
Aa. NiceMan
这个作者很懒,什么都没留下…
展开
-
单例设计模式
单例设计模式 设计模式 设计模式是前人工作的总结和提炼,通常,被人们广泛流传的设计模式都 是针对某一特定问题的成熟解决方案 使用设计模式是为了可重用代码,让代码更容易被他人理解, 保证代码可靠性 == 单例设计模式== 目的:让类创建对象,在系统中只有唯一的一个实例(对象) 每一次执行类名()返回的对象 内存地址是相同的 我们用类名的方式创建对象的时候,python解释器会帮我们做两件事情,是哪两...原创 2020-01-18 13:55:15 · 105 阅读 · 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 · 168 阅读 · 0 评论 -
静态方法
静态方法 class Cat(object): @staticmethod def call(): print('喵喵~') # 静态方法:通过 类名. 调用静态方法 # 不需要创建对象 直接就可以调用 Cat.call() ...原创 2020-01-18 13:48:14 · 139 阅读 · 0 评论 -
类属性类方法
类属性类方法 类属性:针对类对象定义的属性 使用赋值语句在class关键字下可以定义类属性 类方法:针对类对象定义的方法 在类方法内部可以直接访问类属性或者调用其他的类方法 class Toy(object): # 使用赋值语句 记录所有的玩具数量 count = 0 def __init__(self,name): self.name = name ...原创 2020-01-18 13:47:30 · 208 阅读 · 0 评论 -
面向对象(oop)
1 面向过程和面向对象(oop:object oriented programming) 面向过程:—侧重于怎么做? 1.把完成某一个需求的 所有步骤 从头到尾 逐步实现 2.根据开发要求,将某些功能独立的代码封装成一个又一个函数 3.最后完成的代码,就是顺序的调用不同的函数 特点: 1.注重步骤和过程,不注重职责分工 2.如果需求复杂,代码变得非常复杂 3.开发复杂的项目的时候,没有固定的套路,...原创 2020-01-17 21:28:22 · 389 阅读 · 0 评论 -
paramiko
paramiko import paramiko transport = 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 · 330 阅读 · 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 · 143 阅读 · 0 评论 -
mysql
mysql import pymysql 1.连接数据库 conn = pymysql.connect(host='localhost', user='root', password='redhat', db='westos', ...原创 2020-01-04 17:30:58 · 180 阅读 · 0 评论 -
装饰器
装饰器 把一个函数当作参数传递给另一个函数 返回一个替代版的函数 本质上就是一个返回函数的函数 在不改变原函数的基础上 给函数增加功能 def add_one(number): return number + 1 a = add_one(2) print(a) 函数可以作为参数被传递 # def say_hello(name): # return f"Hello {name}" ...原创 2020-01-04 17:21:08 · 117 阅读 · 0 评论 -
table的应用
from prettytable import PrettyTable field_names = ("ID",'名字','英语成绩','Python成绩','C语言成绩') table = PrettyTable(field_names=field_names) print(table)原创 2020-01-03 16:13:31 · 139 阅读 · 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 · 130 阅读 · 0 评论 -
difflib模块之文本对比
difflib模块之文本对比 什么是difflib? 用来做什么? difflib为python的标准库模块,无需安装。 作用是对比文本之间的差异。 并且支持输出可读性比较强的HTML文档,与Linux下的diff命令相似。 在版本控制方面非常有用。 2符号理解 符号 含义 ‘-’ 包含在第一个系列行中,但不包含第二个。 ‘+’ 包含在第二个系列行中,但不包含第一个。 ...原创 2020-01-03 16:06:15 · 180 阅读 · 0 评论 -
时间模块
时间模块 时间表示的几种形式 1.时间戳 2.字符串时间 3.元组类型的时间 import os import time 1.时间戳 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 · 114 阅读 · 0 评论 -
os模块
os模块 import os 1 返回操作系统类型 返回值: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 · 171 阅读 · 0 评论 -
上下文管理器
上下文管理器 上下文管理器 打开文件 执行完with语句后 自动关闭该文件 f = open('/tmp/passwd') with open('/tmp/passwd') as f: print(f.read()) print(f.closed)原创 2019-12-25 20:02:33 · 110 阅读 · 0 评论 -
文件
文件 纯文本文件 文件的操作:打开—>操作—>关闭 r(readonly)默认参数 只能读 不能写,读取文件不存在 会报错 w写文件(write only) 文件存在时,会清空文件的内容并写入新的文件内容,文件不存在,会创建新的文件并写入内容 a写文件(write only) 不会清空文件内容 会在文件末尾追加,文件不存在的时候,不会报错 会创建新的文件并写入内容 ...原创 2019-12-25 20:01:42 · 94 阅读 · 0 评论 -
高阶函数
高阶函数 实参是一个函数,函数的返回值也是一个函数 函数本身也是可以赋值给变量的 变量可以指向函数 print(abs(-10)) f = abs #f=1 print(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 · 107 阅读 · 0 评论 -
字典生成式
字典生成式 import random stuInfo = {} for i in range(20): name = 'westos' + str(i) score = random.randint(60, 100) stuInfo[name] = score print(stuInfo) highscore = {} for name, score in stuInf...原创 2019-12-24 19:12:28 · 106 阅读 · 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 · 167 阅读 · 0 评论 -
深拷备和浅拷备
深拷备和浅拷备 当一个 变量=x 的时候,约定为:指向地址的过程 浅拷备:copy.copy() 想给一个变量获取一个和另一个变量相同的值的时候,但是拥有自己 独立的内存地址空间的时候,可以使用copy.copy()模块,但是如果另一个变量是不可变数据类型的 时候,浅拷备不生效 (只拷备最外层:内存地址中的数据依然是引用) 请简述赋值, 深拷贝和浅拷贝的区别?(python中如何拷贝一个对象?) ...原创 2019-12-24 18:49:20 · 360 阅读 · 0 评论 -
is和==的区别
is和==的区别 id():在内存中存储的位置 type():变量的类型 ==:type value is:type value id原创 2019-12-24 18:04:30 · 126 阅读 · 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 · 149 阅读 · 0 评论 -
安装python3和pycharm
Python3安装原创 2019-12-12 10:40:05 · 140 阅读 · 0 评论 -
判断语句if
判断语句if if 要判断的条件(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 · 130 阅读 · 0 评论 -
循环语句for
循环语句for range():内置python函数 range(start,stop):start~stop-1 range(stop):0~stop-1 range(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 · 139 阅读 · 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 · 169 阅读 · 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 · 144 阅读 · 0 评论 -
循环语句while
循环语句while while 条件满足: 语句1~~~ else: 全部循环结束后 要执行的语句原创 2019-12-12 19:52:36 · 127 阅读 · 0 评论 -
综合练习
设计一个程序,帮助小学生练习10以内的加法 详情: 随机生成加法题目; 学生查看题目并输入答案; 判别学生答题是否正确? 退出时, 统计学生答题总数,正确数量及正确率(保留两位小数点); 小学生算术能力测试系统: 设计一个程序,用来实现帮助小学生进行百以内的算术练习, 它具有以下功能:提供10道加、减、乘或除四种基本算术运算的题目; 练习者根据显示的题目输入自己的答案, 程序自动判断输...原创 2019-12-12 19:55:09 · 184 阅读 · 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 · 116 阅读 · 0 评论 -
集合
集合 集合里面的元素不可重复 s = {1, 1, 1, 1, 1, 3, 5, 67, 89} print(s,type(s)) 定义一个空集合 s1 = {} print(type(s1)) # 默认情况下是dict s2 = 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 · 144 阅读 · 0 评论 -
python中常用的内置方法
python中常用的内置方法 最大值最小值以及求和: 枚举:返回索引值和对应的value值 for i,v in enumerate('hello'): print(i,v) print(str(i) + '---->' + v) zip s1 = '123' s2 = 'ABC' for i in zip(s1,s2): print(i) for i i...原创 2019-12-19 11:51:59 · 102 阅读 · 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 · 219 阅读 · 0 评论