04 2020 档案
摘要:'''format(数字,str(算术式)+"d或者f") d 表示 int f 表示 float ''' format(5,str(2*4)+"d") ' 5' format(5,str(2*4)+"f") '5.000000' '''使用 .2f 控制小数点个数''' format(5,str(
阅读全文
摘要:常用国内源 清华:https://pypi.tuna.tsinghua.edu.cn/simple 阿里云:https://mirrors.aliyun.com/pypi/simple/ 中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple/ 华中理工大学:h
阅读全文
摘要:''' 计算 1.输入半径,输出面积和周长 2.输入面积,输出半径及周长 3.输入周长,输出半径及面积 ''' # # 1.输入半径,输出面积和周长 # from math import pi # # # 定义半径 # r = int(input("请输入半径的值(整数)")) # if r < 0
阅读全文
摘要:# 安装 pip 包 from tkinter import * def getBao(): pip = 'pip install %s -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com'%entry_bao.get()
阅读全文
摘要:pip install 包名 -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com 2020-04-27 pip install -r requirements.txt -i http://pypi.mirrors.ustc
阅读全文
摘要:1.打开 Data Source alt insert 打开 Data Source 找到 db.sqlite3 确定 Download 下载后 TestConnection 测试是否成功 2.项目下的 urls.py 文件 urlpatterns 匹配网页集合 写法 url(正则,views.函数
阅读全文
摘要:1.导入 Django 工程时 在 manage.py 上一级目录导入 2.Add local 本地 Add Remote 远端 3.BASE_DIR 项目所在目录的绝对路径 4.SECRET_KEY 相当于密钥 5.项目开发后->进行测试->演示环境->上线生产环境 6.DEBUG = True
阅读全文
摘要:1.脚本不能随便运行,没准 linux 运行完就上不去了 2.pip 在 linux 上 写 pip3 同理 python 写为 python3 3.在 pycharm 上安装库之后,在命令提示符中依旧需要安装 才能在终端进行使用 4.在虚拟环境下安装 uwsgi 5.升级 django 到2.0版
阅读全文
摘要:import random def load_config(path): with open(path,'r') as tou: return [line for line in tou.readlines()] headers = { 'User-Agent':load_config('usera
阅读全文
摘要:import datetime def date_delta(start, end): # 转换为标准时间 start = datetime.datetime.strptime(start,"%Y-%m-%d %H:%M:%S") end = datetime.datetime.strptime(e
阅读全文
摘要:import datetime import sys def next_day(date_str): date = datetime.datetime.strptime(date_str, '%Y-%m-%d') return (date + datetime.timedelta(days=1)).
阅读全文
摘要:import sys def convert_to_seconds(time_str): # write code here if 's' in time_str: return float(time_str[:-1]) elif 'm' in time_str: return float(time
阅读全文
摘要:import seaborn as sns import numpy as np import pandas as pd import matplotlib.pyplot as plt sns.set(style = "whitegrid",color_codes = True) np.random
阅读全文
摘要:import numpy as np import pandas as pd from scipy import stats,integrate import matplotlib.pyplot as plt import seaborn as sns # iris = pd.read_csv("i
阅读全文
摘要:import numpy as np import pandas as pd from scipy import stats,integrate import matplotlib.pyplot as plt import seaborn as sns # # 绘制直方图 # sns.set(col
阅读全文
摘要:import seaborn as sns import numpy as np import matplotlib.pyplot as plt sns.set(rc = {"figure.figsize":(6,6)}) # 调色板 # color_palette() 默认颜色 , 可以传入所有支
阅读全文
摘要:import matplotlib.pyplot as plt import seaborn as sns import numpy as np def sinplot(flip = 1): x = np.linspace(0,14,100) for i in range(1,7): plt.plo
阅读全文
摘要:import seaborn as sns import numpy as np import matplotlib.pyplot as plt # # 折线图 def sinplot(flip = 1): x = np.linspace(0,14,100) for i in range(1,7):
阅读全文
摘要:加载数据集 sklearn.datasets 集成了部分数据分析的经典数据集· load_boston 回归 load_breast_cancer 分类 聚类 fetch_california_housing 回归 load_iris 分类 聚类 load_digits 分类 load_wine 分
阅读全文
摘要:# 一行代码合并字典 # {**{'键':'值','键':'值'},**{'键','值'}} dic = {**{'a':1,'b':2},**{'c':3},**{'d':4}} print(dic) # {'a': 1, 'b': 2, 'c': 3, 'd': 4} # 一行代码查看多个列表最
阅读全文
摘要:1.Checkbutton(self 窗口对象,text 按钮显示内容,variable 绑定变量->一起变化, onvalue 用户点击时得到的值,offvalue 没有点击得到的值) self.choose1 = Checkbutton(self,text = "玩游戏",variable =
阅读全文
摘要:1.Radiobutton(root 主窗口,text 文本内容,value 值(可以通过set 和 get 获取到的值),variable 变量修改原来的StringVar) self.radio_man = Radiobutton(root,text = "男性",value = "man",v
阅读全文
摘要:1.Text(root,width,height,bg) 主窗口,宽度,高度,背景色 2.使用 .insert() 方法添加内容 Text 对象.insert(几行.几列,"内容") w1.insert(2.3,"···") END 为最后位置 self.w1.insert(END,'[end]')
阅读全文
摘要:1.BooleanVar() 布尔类型 2.IntVar() 整数类型 3.DoubleVar() 浮点数类型 4.StringVar() 字符串类型 5.self.entry1 = Entry(self,textviable = v1) textviable 实现双向关联 6.v1.set("ad
阅读全文
摘要:1.self.btn2 = Button(root,image = photo,command = self.login) 使用 image 图片作为按钮,command 作为响应 2.self.btn2.config(state = "disabled") 对按钮进行禁用 config 中 anc
阅读全文
摘要:1.width,height 指定区域大小 文本 汉字 2 个字节 2.font 指定字体和字体大小 font(font_name,size) 3.image 显示在 Label 上的图像 支持 gif 格式 4.fg 前景色 5.bg 背景色 6.justify 针对多行文字的对齐 left ce
阅读全文
摘要:1.继承 tkinter.Frame 类,实现类的基本写法 2.创建主窗口及主窗口大小位置及标题 3.将需要添加的组件放入到类中进行创建, 继承的 Frame 类需要使用 master 参数作为父类的初始化使用 4.初始化时,将属性和方法都进行初始化,此时可以将 GUI 程序所要实现的功能确定好 5
阅读全文
摘要:截图来自北京尚学堂 手册:http://effbot.org/tkinterbook/ 2020-04-20
阅读全文
摘要:1.创建应用程序主窗口对象 root = Tk() 2.在主窗口中,添加各种可视化组件 btn1 = Button(root) btn1["text"] = "点我" 3.通过几何布局管理器,管理组件得大小和位置 btn1.pack() 4.事件处理 通过绑定事件处理程序,响应用户操作所触发的事件
阅读全文
摘要:''' 有一段英文文本,其中有单词连续重复了 2 次,编写程序检查重复的单词并只保留一个 例: This is a a desk. 输出 This is a desk. ''' # 方法一 import re x = 'This is a a desk.' # 设置字符串 pattern = re.
阅读全文
摘要:# 方法一 print(sum(range(1,100)[::2])) # 2500 # 方法二 x = [i for i in range(1,100) if i % 2 == 1 ] print(sum(x)) # 2450 2020-04-19
阅读全文
摘要:1 ''' 2 装饰器的作用 3 引入日志 4 函数执行时间的统计 5 执行函数前预备处理 6 执行函数后清理功能 7 权限校验等场景 8 缓存 9 ''' 10 11 # 定义一个函数,遵循闭包原则(函数作为参数) 12 def decorator(func): 13 '''定义一个装饰器函数''
阅读全文
摘要:关于类和对象的理解: 类 -> 设计图纸,设计应该具有哪些属性和行为 对象 -> 使用图纸制造出来的模型 类中定义普通方法,第一个参数为 self self可以修改为别的,但最好还是不要改变,约定好的 self.属性 self.方法 调用 self 指向的对象的属性和行为 在类外可以为实例化对象直接
阅读全文
摘要:列表常用场景: 存储不同类型的数据 任意类型均可 列表存储相同类型的数据 类 node结点 next、data 通过迭代遍历,在循环体内部(多为 while 内),对列表的每一项都进行遍历 树的深度遍历等等 列表推导式的使用等等 元组常用场景: 作为函数的参数和返回值 传递任意多个参数 *args
阅读全文
摘要:1 class Node(object): 2 '''定义一个结点,有左孩子和右孩子''' 3 def __init__(self,data): 4 # 结点数据 5 self.data = data 6 # 左、右 孩子指向为空 7 self.lchild = None 8 self.rchild
阅读全文
摘要:1 class Node(object): 2 '''定义一个结点,有左孩子和右孩子''' 3 def __init__(self,data): 4 # 结点数据 5 self.data = data 6 # 左、右 孩子指向为空 7 self.lchild = None 8 self.rchild
阅读全文
摘要:1 ''' 2 树: 3 每一个结点都有零个或多个子结点 4 没有父节点的节点称为根节点 5 每一个非根结点有且只有一个父结点 6 除了根结点外,每一个子节点可以分为多个不相交的子树 7 二叉树性质: 8 在二叉树的第 i 层 最多有 2^(i-1) 个结点 9 深度为 k 的二叉树最多有 2^k
阅读全文
摘要:1 class DoubleQueue(object): 2 '''实现双端队列''' 3 def __init__(self): 4 self.__lst = [] 5 # 创建一个容器容纳队列成员 6 7 def append_frontdata(self,data): 8 '''在头部添加元素
阅读全文
摘要:1 class Queue(object): 2 '''实现队列''' 3 def __init__(self): 4 self.__lst = [] 5 # 创建一个容器容纳队列成员 6 7 def append_data(self,data): 8 # 添加元素 9 self.__lst.app
阅读全文
摘要:lst = [1,2,3,2,1,5,5] lst = list(filter(lambda x:lst.count(x) != 1,lst)) lst 运行结果: [1, 2, 2, 1, 5, 5] 2020-04-15
阅读全文
摘要:1 class Stack(object): 2 '''创建一个栈''' 3 def __init__(self): 4 self.__lst = [] 5 # 将列表设置为私有,不让外界进行访问 6 7 def add(self,data): 8 '''在尾部添加元素''' 9 self.__ls
阅读全文
摘要:1 import MySQLdb 2 # 导入 MySQL 库 3 4 class MysqlMethod(object): 5 def __init__(self): 6 # 前提:能够连接上数据库 7 self.get_connect() 8 9 10 def get_connect(self)
阅读全文
摘要:1.ctrl + shift + = 放大终端字体 2.ctrl + - 缩小终端字体 3.ls 查看当前文件夹下的内容 4.pwd 查看当前所在的文件夹 5.cd 目录名 切换文件夹 6.touch 如果文件不存在 则创建文件 创建一个文档 7.mkdir 创建目录 创建一个文件夹 8.rm 删除
阅读全文
摘要:remove_zeros = lambda s: ','.join(map(lambda sub: str(int(sub)), s.split(','))) remove_zeros("089,0760,009") 2020-04-14
阅读全文
摘要:1 # 实现单向循环链表 2 class Node(object): 3 '''定义一个节点''' 4 def __init__(self,data): 5 # 因为每次都需要生成一个节点,写到类里面便于保存 6 self.data = data 7 # 保存节点的值 8 self.next = N
阅读全文
摘要:1 # 实现双链表 2 class Node(object): 3 # 前驱 数据 后继 4 def __init__(self,data): 5 self.pre = None 6 # 前驱 7 self.data = self.data 8 # 数据 9 self.next = None 10
阅读全文
摘要:1 # 实现单链表 2 class Node(object): 3 '''定义一个节点''' 4 def __init__(self,data): 5 # 因为每次都需要生成一个节点,写到类里面便于保存 6 self.data = data 7 # 保存节点的值 8 self.next = None
阅读全文
摘要:字典的常用操作: 1.创建字典对象 dict.fromkeys(seq[,value]) dic = {key1:value1,key2,value2} dic = dict(zip([keys],[values])) 2.使用 对象['键值'] 访问字典元素 3.修改字典 对象['键值'] = 对
阅读全文
摘要:列表的常用操作: 1.使用 索引下标 或 切片 查找对应元素的值 修改特定位置上的值 2.删除列表元素 del 对象 对象.pop(index=-1) 对象.remove(元素) 对象.clear() 3.查看列表长度 len(对象) 4.重复 n 次 对象 * n 5.拼接两个列表对象 对象 +
阅读全文
摘要:爬取数据之后: 新闻聚合阅读器 最爆笑故事APP 最漂亮美女图片网 图书价格对比网 Python技术文章大全 设置爬虫终端: URL 管理器 -> 网页下载器 -> 网页解析器 -> 产生价值数据 URL 管理器判断爬取网页链接 流程: 调度器询问 URL 管理器,是否存在要爬取的 URL URL
阅读全文
摘要:1.如果存在数据极端,则可以单独处理 需求: 求素数(质数): 只能被 1 和自身整除 1 不是素数 输出 1~100 的素数 程序: def is_sushu(int_num): # 判断输入的数是否为质数 if int_num == 1: return False if int_num == 2
阅读全文
摘要:1.协程,微型进程: yield 生成器 yield 会保存声明的变量,可以进行迭代 使用 接收函数返回的对象.__next__() next(接收函数返回的对象) .send() 方法 传递给函数中 yield 声明的对象 x = yield i 会发送给 x 变量 如果一直没有使用 send()
阅读全文
摘要:1.全局锁 GIL 在任意一个指定的时间中,有且仅有一个线程在运行 -> 线程比较安全 2.线程复杂度较高,通常不建议使用 3.使用在 数据库线程池,数据库连接池, 4.不要大量使用线程,修改难度稍大 mlock = threading.Lock() 5.互斥锁 加锁 acquire mlock.a
阅读全文
摘要:1.进程在运行时会创建一个主线程,每一个进程只有一个主线程 2.子进程 pid 唯一标识符 3.任意时间里,只有一个线程在运行,且运行顺序不能确定(全局锁限制) 4.threading.Thread(target = test,args = [i]) target = 函数名 ,args = [ 参
阅读全文
摘要:1.with open("文件路径","模式") as fp: 操作 进入时 调用 __enter__ 方法 def __enter__(self): print("开始执行 with 方法") 退出时 调用 __exit__ 方法 def __exit__(self,type,value,trac
阅读全文
摘要:import logging logger = logging.getLogger() # 获取日志对象 logfile = 'test.log' hdlr = logging.FileHandler('senging.txt') # 存储文件日志 formatter = logging.Forma
阅读全文
摘要:1.找到可能会抛出异常的地方,仅对这几行代码进行异常处理 2.明确会出现的异常类型 缩进,类型,语法,索引等等 3.捕获出现的异常 import sys exc = sys.exc_info() exc[1] 为问题出现的原因 4.日志 logging 模块 import logging logge
阅读全文
摘要:1.索引异常 IndexError: list index out of range 2.语法异常 SyntaxError 3.缩进异常 IndentationError: unexpected indent 4.try 语句完整形态:try except else finally 5.try 内的
阅读全文
摘要:1.import 模块名(文件) 导入模块 2.查看模块内的方法 dir(模块名) 3.if __name__ == "__main__": 需要测试的语句 4.from 模块名 import 方法/属性/* 再使用时 使用 方法即可 不再使用模块名.方法 5.使用 __all__ = ["方法1"
阅读全文
摘要:''' 1.当方法具有结构时,使用 class 比函数要好 2.类中定义的 方法 或 属性 如果没有声明权限 在类外使用实例化对象可以直接访问 3.类中的方法,第一个参数一定要写上 self ,self 是约定好的 4.析构方法通常调用不到,垃圾回收机制中引用计数后会自动销毁 5.写程序之前: 伪代
阅读全文
摘要:大家可以看看菜鸟教程,里面已经很全面了。 https://www.runoob.com/ 类: https://www.runoob.com/python/python-object.html https://www.runoob.com/python3/python3-class.html 异常:
阅读全文
摘要:lst = [1,2,3] lst2 = [1,2,3,5,1] lst3 = [1,2] lst4 = [1,2,3,65,8] lst5 = [1,2,3,59,5,1,2,3] def length(*args): # 返回长度 lens = [] lens = [len(i) for i i
阅读全文
摘要:1.匿名函数: 一个表达式,没有 return 没有名称,执行很小的功能,不可以在内部写条件语句 2.判断参数是否存在 如果不存在会怎样->给出解决办法 3.可以使用 filter 和 lambda 进行使用 如果不进行 list 转换,则只返回 filter 对象 4.参数: 位置匹配: func
阅读全文
摘要:1.考虑可维护性 一行代码尽量简单 列表推导式 lambda 匿名函数 2.断言语句用于自己测试,不要写在流程控制中 assert 不要写在 for 循环中 3.程序的异常处理 参数处理 try 异常处理 ,参数类型是什么 4.函数->尽量不要在特定环境下使用 5.断言就是异常->出错了就会抛出异常
阅读全文
摘要:1 ''' 2 两数相加: 3 给出两个 非空 的链表用来表示两个非负的整数 4 各自的位数是按照逆序的方式存储的 每一个节点只能保存 一位数 5 示例: 6 输入:(2->4->3) + (5->6->4) 7 输出:7->0->8 8 原因:342 + 465 = 807 9 10 ''' 11
阅读全文
摘要:1 1.指定 eval()调用一个代码对象会提高性能 2 2.在进行模式匹配之前,正则表达式的模式必须编译为正则表达式对象 3 匹配时需要进行多次匹配,进行预编译可以提升速度 4 re.compile(pattern,flags = 0) 5 3.消除缓存 6 re.purge() 7 4.使用 r
阅读全文
摘要:False:布尔类型,假。当条件判断不成立时,返回False。 # == 判断两个对象的值是否相等 print('' == False)# Falseprint(None == False)# Falseprint([] == False)# Falseprint(() == False)# Fal
阅读全文
摘要:Python异常及异常处理: 当程序运行时,发生的错误称为异常 例: 0 不能作为除数:ZeroDivisionError 变量未定义:NameError 不同类型进行相加:TypeError 异常处理: ''' try: 执行代码 except: 发生异常时执行的代码 执行 try 语句: 如果发
阅读全文
摘要:1.在循环中不要使用 排序函数 2.解决问题先要有正确的思路 写出伪代码 第一步做什么 第二步做什么 ... 慢慢实现 3.使用 filter 函数 当函数中参数类型为 int 时才进行比较 def func(*num): num = filter(lambda x:isinstance(x,int
阅读全文
摘要:1.print "a>b" if a>b else pass 出错问题 pass 不可以被输出,导致报错 2.定义函数: def 函数名(): return 可选 3.print 输出时会运行函数 print func_name() 注:func_name 中有 print 后,最好不要再使用 pr
阅读全文
摘要:1.特征向量 每一个有效词汇在邮件中出现的次数(使用一维列表方法) word 词汇出现的次数 一维列表.count(word) 2.将列表转换为数组形式 array(参数) 创建垃圾邮件,正常邮件训练集 array(列表对象 或 表达式) 3.使用 朴素贝叶斯算法 model = Multinomi
阅读全文
摘要:1.使用 chain 对 allwords 二维列表进行解包 from itertools import chain allwords = [] allwords.append(列表) 解包: chain(*allwords) 将 allwords 里面的子列表解出来 2.使用 next 对 cha
阅读全文
摘要:原理: 1.使用足够多的垃圾邮件和非垃圾邮件的内容作为训练集 2.读取全部训练集 删除其中的干扰字符 【 】 ,* 。 进行分词 删除长度为 1 的单个字符 3.统计全部训练集中每个有效词汇的出现次数,截取出现次数最多的前 N 个 注:N 可以自己指定 4.根据每个经过第 2 步预处理后的垃圾邮件和
阅读全文
摘要:import pandas as pd unrate = pd.read_csv("unrate.csv") 1.转换日期时间 unrate["date"] = pd.to_datetime(unrate["DATE"]) import matplotlib.pyplot as plt 2.画图操作
阅读全文
摘要:1.创建 Series 对象 fandango = pd.read_csv("xxx.csv") series_rt = fandango["RottenTomatoes"] rt_scores = series_rt.values series_film = fandango["FILM"] #
阅读全文
摘要:import pandas as pd import numpy as np food_info = pd.read_csv('food_info.csv') 1.处理缺失值(可使用平均数,众数填充) 查看非缺失值的数据: price_is_null = pd.isnull(food_info["P
阅读全文
摘要:1.导包 import pandas as pd 2.数据读取,文件在该代码文件夹内 food_info = pd.read_csv('food_info.csv') 3.查看类型 food_info.dtypes 4.查看前五条数据 food_info.head() 查看前三条数据 food_in
阅读全文
摘要:1. /b 和 /B # /bthe 匹配任何以 the 开始的字符串 # /bthe/b 仅匹配 the # /Bthe 任何包含但并不以 the 作为起始的字符串 2. [cr] 表示 c 或者 r [cr][23][dp][o2] 一个包含四个字符的字符串,第一个字符是“c”或“r”, 然后是
阅读全文
摘要:1 ''' 2 1.查看列上最大索引的位置 3 data.argmax(axis = 0) 4 2.输出索引位置上的元素 5 data[index,range(data.shape[1])] 6 使用 range 输出几个元素 7 3.对numpy 对象进行扩展 8 a = np.array([4,
阅读全文
摘要:''' 1.b = a b 发生变化 a 也会发生变化 2.浅复制 c = a.view() c.shape 发生变化,a.shape 不会发生变化 c 和 a 共用元素值,id 指向不同 c[1,0] = 1234 , a 的值也会发生变化 3.深复制 d = a.copy() d[0,0] =
阅读全文
摘要:1 程序要点:import numpy as np 2 1.查看 e 的 多少次方 3 np.exp(参数) 4 2.查看参数的平方根 5 np.sqrt(参数) 6 3.生成三维四列的随机值(-1,1)之间 7 np.random.random((3,4)) 8 4.向下取整 9 a = np.f
阅读全文
摘要:''' KNN 近邻算法,有监督学习算法 用于分类和回归 思路: 1.在样本空间中查找 k 个最相似或者距离最近的样本 2.根据这 k 个最相似的样本对未知样本进行分类 步骤: 1.对数据进行预处理 提取特征向量,对原来的数据重新表达 2.确定距离计算公式 计算已知样本空间中所有样本与未知样本的距离
阅读全文
摘要:''' 1.将所有样本都看作各自一类 2.定义类间距离计算公式 3.选择距离最小的一堆元素合并成一个新的类 4.重新计算各类之间的距离并重复上面的步骤 5.直到所有的原始元素划分成指定数量的类 程序要点: 1.生成测试数据 sklearn.datasets.make_blobs 2.系统聚类算法 s
阅读全文
摘要:''' a = 10 b = 8 print("a>b") if a>b else pass pass 为何报错问题: 第一部分:print 第二部分:("a>b") if a>b else pass 第一种情况 print ("a>b") 第二种情况 print(pass) pass 关键字,不用
阅读全文
摘要:1 ''' 2 编程完成一个简单的学生管理系统,要求如下: 3 (1)使用自定义函数,完成对程序的模块化 4 (2)学生信息至少包括:姓名、性别及手机号 5 (3)该系统具有的功能:添加、删除、修改、显示、退出系统 6 设计思路如下: 7 (1) 提示用户选择功能序号 8 (2) 获取用户选择的能够
阅读全文
摘要:1 ''' 2 分析: 3 参数->指定整数范围,最大次数 4 在指定范围内随机产生一个整数,让用户猜测该数 5 提示,猜大,猜小,猜对 6 给出提示,直到猜对或次数用尽 7 ''' 8 import random 9 10 def fail(os_num): 11 '''输入数字范围错误,没有猜数
阅读全文