Python学习笔记
浅拷贝
这个作者很懒,什么都没留下…
展开
-
sqlalchemy合并不同2个不同列名的表
背景:最近在开发一个flask项目,仿知乎的系统,数据库链接采用sqlalchemy首页的需求:获取最多赞同和最多评论的文章,排在前面分页组件:原创 2022-07-09 22:25:15 · 690 阅读 · 0 评论 -
jinja2.exceptions.UndefinedError: ‘None‘ has no attribute ‘id‘
前言: 最近在写一个仿知乎的,在线问答系统,用flask,在造数据,对接前端的时候,报了一个错,这个错很诡异……pycharm控制台:找到所在的视图函数,进行debug :在前端js的逻辑里面,加入了判空处理:还是会报错……分析:1.创建一个有评论数据的文章,进入debug,是不会报错的2.在进入没有评论数据的文章,会报错百思不得其解 ……报错的问题是:在请求评论数据的异步接口中,需要一个问题的id(根据问题的id,获取到该问题下的第一条评论内容,作为默认加载项)尝试过思路:1.在原创 2022-07-05 13:01:23 · 1017 阅读 · 0 评论 -
访问django后台,提示CSRF验证失败. 请求被中断.Referer checking failed - **** does not match any trust
1.非debug模式看到的报错2.settings打开debug模式,才能把报错信息看的详细3.去settings.py中,找到CsrfViewMiddleware 中间件,点击进入4.搜索匹配报错信息5.往下看看用到这个关键字的地方6.从源码第一行开始看7.settings.py,添加这句代码CSRF_TRUSTED_ORIGINS = ['http://192.168.1.200']8.重新启动项目,然后访问后台,可以了...原创 2022-04-28 18:31:33 · 9865 阅读 · 7 评论 -
mysql保存表情包utf8mb4
1.创建数据库时,指定字符集CREATE DATABASE IF NOT EXISTS test_enjoy DEFAULTCHARACTER SET utf8mb4 DEFAULT COLLATE utf8mb4_general_ci;2.数据库配置文件加上charset=utf8mb4示例:app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql://root:123456@127.0.0.1/test_enjoy?charset=utf8m原创 2021-12-31 00:51:51 · 395 阅读 · 0 评论 -
python- 初探异常
# coding:utf-8# author:我本善良# create_time:2021/6/3 22:45'''什么是异常与异常处理? 异常就是错误 异常会导致程序崩溃并停止运行 能监控并捕获到异常,将异常捕获的程序进行处理使得程序继续正常运行异常的语法结构 try: <代码块> 被try关键字检查并保护的业务代码 except <异常的类型>: <代码块2> #代码块1出现错误后原创 2021-06-03 23:26:54 · 83 阅读 · 0 评论 -
python-类的避炕指南
# coding:utf-8# author:我本善良# create_time:2021/6/3 20:31'''class Boy(object): def __call__(self,**kwargs): print('args is {}'.format(kwargs))if __name__ == '__main__': boy = Boy() boy(name='qinghua')''''''class Boy(object):原创 2021-06-03 23:26:09 · 78 阅读 · 0 评论 -
python-面向对象-学生库类的综合练习
# coding:utf-8# author:我本善良# create_time:2021/6/1 21:34'''学生库'''class StudentInfo(object): def __init__(self,students): self.students = students def get_by_id(self,student_id): return self.students.get(student_id) # 获取原创 2021-06-01 23:01:55 · 209 阅读 · 0 评论 -
python-类的高阶函数中的类内置函数
# coding:utf-8# author:我本善良# create_time:2021/6/1 19:37'''高阶函数启蒙''''''1、__str__ 功能:如果定义了该函数,当print当前实例化对象的时候,会返回该函数的return信息 用法: def __str__(self): retuen str_type 参数: 无 返回值: 一般返回对于该类的描述信息 示原创 2021-06-01 23:01:03 · 99 阅读 · 0 评论 -
python-类编程练习二
# coding:utf-8# author:我本善良# create_time:2021/5/31 22:04class Point(object):# 自定义Point类的构造(初始化)方法 def __init__(self,x,y): self.x = x self.y = y# 自定义Point类对象的格式化输出函数(string()) def string(self): # print('{X:{},y:{}}.原创 2021-05-31 22:53:18 · 140 阅读 · 0 评论 -
python-类的编程练习一
# coding:utf-8# author:我本善良# create_time:2021/5/31 20:25'''自定义两个类Person和Student,且Student继承自Person。Person类主要描述人的姓名和性别两大基本特征。Student类除了保持父类的基本属性之外还具有分数、主修两个公有属以及一个私有属性(学号)。请根据上述的基本说明,对stu和stu_2两个对象的信息进行综合展示。'''class Person(object): def __init原创 2021-05-31 22:02:23 · 401 阅读 · 0 评论 -
python-类的多重继承
# coding:utf-8# author:我本善良# create_time:2021/5/31 21:38'''1、什么是多重继承? 可以继承多个基(父)类2、多重继承的方法 class Child(Parent1,Parent2,Parent3): 将被继承的类,放入子类的参数中,用逗号隔开 从左到右依次继承'''# 1、写2个父类class Tool(object): def work(self): return .原创 2021-05-31 22:01:42 · 232 阅读 · 0 评论 -
python-类的多态
# coding:utf-8# author:我本善良# create_time:2021/5/31 20:55'''1、什么是类的多态? 例子: 小穆爸爸:平淡说话 小穆哥哥:说话,语速很快 小 穆:说话,语速很慢 同一个功能,表现出了多状态化,叫做多态2、多态的用法 子类中,重写父类的方法'''#1、书写一个父类class XiaomuFather(object): def talk(self):原创 2021-05-31 22:01:04 · 524 阅读 · 0 评论 -
python-类的super函数
# coding:utf-8# author:我本善良# create_time:2021/5/31 19:49'''super函数的作用 python 子类继承父类的方法而使用的关键字,当子类继承父类后,就可以使用父类的方法super函数的用法class Parent(objent): def __init__(self): print('hello i am parent')class Child(Parent): def __init__(s原创 2021-05-31 22:00:25 · 129 阅读 · 0 评论 -
python- 类-父类-子类
# coding:utf-8# author:我本善良# create_time:2021/5/31 19:30class Parent(object): def __init__(self,name,sex): self.name = name self.sex = sex def talk(self): return f'{self.name} are talking' def is_sex(self):原创 2021-05-31 21:59:26 · 345 阅读 · 0 评论 -
python-初识类的继承
# coding:utf-8# author:我本善良# create_time:2021/5/31 19:15'''1、什么是继承? 父亲:说话、独立思考、直立行走 儿子:说话、独立思考、直立行走 通过继承基类来得到基类的功能 所以我们把继承的类称作为父类或基类,继承者被称作子类 继承的好处:代码的重用2、父(基)类与子类 子类拥有父类的所有的属性和方法 父类不具备子类自有的属性和方法'''class Parent(ob.原创 2021-05-31 21:58:39 · 377 阅读 · 0 评论 -
python-装饰器
# coding:utf-8# author:我本善良# create_time:2021/5/30 18:00'''1、什么是装饰器? 也是一种函数 可以接受函数作为函数 可以返回函数 接收一个函数,内部对其处理,然后返回一个新函数,动态的增强函数功能 将c函数在a函数中执行,在a函数中可以选择执行或不执行,也可以对c函数的结果进行二次加工处理 示例: def a(): def b(): print(原创 2021-05-30 23:05:00 · 49 阅读 · 0 评论 -
python-面向对象实现银行账户的资金交易管理
# coding:utf-8# author:我本善良# create_time:2021/5/30 16:40class Bank(object): name = '小穆' _money = 0 def save_money(self,money): self.money = money + self._money print('您好!{},你存款后的余额是{}'.format(self.name,self.money)) def原创 2021-05-30 23:03:52 · 601 阅读 · 0 评论 -
python- 类的装饰器
# coding:utf-8# author:我本善良# create_time:2021/5/30 19:24'''classmethod: classmethod功能:将类函数,可以不经过实例化,而直接被调用 用法: @classmethod def func(cls,…): do 参数介绍: cls 替代普通类函数中的self,变为cls,代表当前操作的是类 示例: class Test(object):原创 2021-05-30 23:01:40 · 168 阅读 · 0 评论 -
python-单选题练习1
# coding:utf-8# author:我本善良# create_time:2021/5/30 15:38class Teacher(object): company = 'imooc' def __init__(self,name,sex): self.__sex = sex self.name = name def study(self): print('公司名称:{}'.format(self.company))原创 2021-05-30 23:00:36 · 69 阅读 · 0 评论 -
python-交通工具类
# coding:utf-8# author:我本善良# create_time:2021/5/30 15:45'''任务:1、自定义一个交通工具类(Vehicle)2、设置类属性trans_type (默认为SUV) 和实例属性速度speed (int类型,单位为km/h)、体积size(tuple 类型,单位为米)3、自定义方法show_info(),打印示例的所属类型和数独,体积的值4、自定义实例方法如下: (1)定义move( )方法,实现打印"我已向前移动了50米"原创 2021-05-30 22:59:57 · 3362 阅读 · 0 评论 -
python-python中的封装概念
# coding:utf-8# author:我本善良# create_time:2021/5/30 16:32'''python中封装的概念 将不对外的私有属性或方法通过可对外使用的函数而使用(类中定义私有的,只有类内部使用,外部无法访问) 这样做的主要原因是:保护隐私,明确区分内外'''class Parent(object): def __hello(self,data): print('hello %s' % data) def he原创 2021-05-30 22:58:36 · 230 阅读 · 0 评论 -
python-类的参数self
# coding:utf-8# author:我本善良# create_time:2021/5/29 21:03'''类的参数self self是类函数中的必传参数,且必须放在第一个参数位置 self是一个对象,他代表实例化的变量自身 selfk可以直接通过点来定义一个类变量 self.name = 'dewei' self 中变量与含有self参数的函数可以在类中的任何一个函数内随意调用 非函数中定义的变量在定义的时候,不用self 注意:.原创 2021-05-29 23:25:37 · 425 阅读 · 0 评论 -
python-私有属性和私有变量
# coding:utf-8# author:我本善良# create_time:2021/5/29 22:43'''1、什么是私有函数和私有变量 无法被实例化后的对象调用的类中的函数与变量 类内部可以调用私有函数与变量 只希望类内部业务调用使用,不希望被使用者调用2、私有函数与私有变量的定义方法 在变量或函数前添加_(2个下划线),变量或函数名后边无需添加 示例: class Person(object): def __in原创 2021-05-29 23:24:55 · 156 阅读 · 0 评论 -
python-对象的生命周期
# coding:utf-8# author:我本善良# create_time:2021/5/29 22:26'''对象的生命周期: 1、实例化__init__:对象生命的开始 2、内存中分配一个内存块 3、每个内存有一个默认的del函数__del__删除对象 4、从内存中释放这个内存块'''...原创 2021-05-29 23:24:20 · 118 阅读 · 0 评论 -
python-初识面向对象编程
# coding:utf-8# author:我本善良# create_time:2021/5/29 20:21'''本节课内容:1、什么是面向对象编程(类)? 利用(面向)对象(属性与方法)去进行编码的过程,就是面向对象 自定义对象数据类型就是面向对象中的类(class)的概念 面向过程编程的核心是过程:就是分析出实现需求所需要的步骤,通过函数一步步实现这些步骤, 接着依次条用即可,再简单理解就是程序从上到下一步步执行原创 2021-05-29 23:23:39 · 85 阅读 · 0 评论 -
python的-面向对象与异常
# coding:utf-8# author:我本善良# create_time:2021/5/29 19:14'''学习路径面向对象: 何为面向对象 - 面向对象(类)的定义与使用方法 - 装饰器与类的装饰器 - 私有函数与私有变量 类的继承 - 类的多重继承 - 类的多态 - 类的高级函数异常: 何为异常 异常关键字 try except finally 内置异常类型 自定义异常类型原创 2021-05-29 23:22:47 · 64 阅读 · 0 评论 -
python-总结函数传参的方式
# coding:utf-8# author:我本善良# create_time:2021/5/27 22:59'''在函数中,经常会用到参数来做一系列的业务处理,我们先来说说函数中的参数。形参变量(所形参就是def生命函数名括号中的参数)只有在被调用时,才会分配内存单元,调用结束时,释放所分配的内存单元。因此,形参只在函数内有效。实参(调用函数传入的参数被成为实参):无论实参是何种类型,在进行函数调用,它们都必须有确定的值。传参的形式:第一种位置参数:位置参数顾名思义,就是调用函数原创 2021-05-29 19:37:41 · 134 阅读 · 0 评论 -
python- 局部变量与全局变量
# coding:utf-8# author:我本善良# create_time:2021/5/29 10:41'''全局变量# coding:utf-8name = 'dewei' #在python脚本最上层代码块的变量def test(): #全局变量可以在函数内被读取使用 print(name)''''''name = "dewei"def test(): print(name)def test1(): name = 'dewei'原创 2021-05-29 19:37:04 · 39 阅读 · 0 评论 -
python-学生库练习
# coding:utf-8# author:我本善良# create_time:2021/5/29 15:49'''学生库'''students = { 1:{ 'name':'dewei', 'age':33, 'class_number':'A', 'sex':'boy' }, 2:{ 'name':'小幕', 'age':18, 'class_nu原创 2021-05-29 19:36:30 · 201 阅读 · 0 评论 -
python- 匿名函数lambda
# coding:utf-8# author:我本善良# create_time:2021/5/29 11:14'''lambda 功能 定义一个轻量化的函数 即用即删除,很适合需要完成一项功能,但是此功能只在此一处使用lambda 用法 匿名函数的定义方法: 无参数形式: f = lambda: value f() 有参数: f = lambda x,y:x*y f()'''# coding:u原创 2021-05-29 19:35:45 · 65 阅读 · 0 评论 -
python-函数练习3
# coding:utf-8# author:我本善良# create_time:2021/5/27 22:53def seq(num,num1,num2): if num < 88 : return num1* num2 else: return num1+num2s_ = (5,2,1)print(seq(*s_))原创 2021-05-29 19:35:05 · 45 阅读 · 0 评论 -
python-函数练习2
# coding:utf-8# author:我本善良# create_time:2021/5/27 22:43def oper(num,num1,num2): if num < 100: print(num1 * num2) else: print(num1 + num2)oper(1314,52,0)oper(5,2,0)原创 2021-05-29 19:34:19 · 125 阅读 · 0 评论 -
python-函数练习1
# coding:utf-8# author:我本善良# create_time:2021/5/27 22:41def content(a,b): if a > 0 and b >0: print(a % b) else: print(a + b )content(9,2)原创 2021-05-29 19:33:48 · 44 阅读 · 0 评论 -
python-函数的递归
# coding:utf-8#author:我本善良#create_time:2021/5/29 11:00'''1、什么是递归函数? 类似的:只要我不累,我可用一直跑步…… 概念:一个函数不停的将自己反复执行2、递归函数的定义方法 def test(a): print(a) return test(a)3、递归函数的说明'''count = 0def test(): global count coun.原创 2021-05-29 19:29:23 · 94 阅读 · 0 评论 -
python- 函数的定义和使用
# coding:utf-8# author:我本善良# create_time:2021/5/29 18:19'''说明:len()函数时pyhon内置函数,可以用于计算列表长度,程序中自定义了len()长度,与内置函数重名说明:带有默认值的参数必须在参数列表末尾,应修改为 def demo(y,x+10):说明:函数可以返回多个值,以元组的形式返回'''def demo(x,list_1=[]): list_1 = [] for i in range(x):原创 2021-05-29 19:28:39 · 57 阅读 · 0 评论 -
python-函数的定义
# coding:utf-8#author:我本善良#create_time:2021/5/26 19:41'''函数的定义 函数要做的事情:将一件事情的步骤封装在一起并得到最终结果 函数名代表了这个函数要做的事情 函数体是实现函数功能的流程 方法或功能 函数可以帮助我们重复使用,通过函数名我们可以知道函数的作用函数的分类 内置函数:python 为我们定义好的函数 自定义函数:通过关键字 def 定义函数的创建方法 通原创 2021-05-29 19:27:12 · 43 阅读 · 0 评论 -
python-函数的参数类型定义
# coding:utf-8# author:我本善良# create_time:2021/5/27 23:28''' 参数名+冒号+类型函数def person(name:str,age:int=33): print(name,age)ps: 函数的定义在python3.7之后可用 函数不会对参数类型进行验证'''def add(a:int,b:int=3): print(a+b)add(1,3)add('hello','.原创 2021-05-29 19:26:35 · 1190 阅读 · 0 评论 -
python-函数的传参
# coding:utf-8# author:我本善良# create_time:2021/5/26 20:45'''函数的传参: 1、必传参数 函数中定义的参数没有默认值,在调用函数时如果不传入则报错 def add(): return a+b result = add(1,3) print(result) 注:在定义函数的时候,没有默认值且必须在函数执行的时候,转递进去的参数,且顺序原创 2021-05-29 19:25:54 · 64 阅读 · 0 评论 -
python-函数登陆
# coding:utf-8#author:我本善良#create_time:2021/5/27 22:48def login(username,passowrd): if username == 'imooc' and passowrd == '123456': return '登陆成功' else: return '登陆失败'print(login('Tom','123456'))print(login('imooc','123456'))原创 2021-05-29 19:25:14 · 111 阅读 · 0 评论 -
python所有数据类型与布尔值的关系
'''学习内容:字符串,数字,列表,元组,字典,空类型与布尔值的关系总结数据类型与布尔值的关系 每一种数据类型,自身的值都有表示True与False not 对于一切结果取反数据类型 为True 为Falseint 非0 0float 非0.0 0.0str len(str)!=0 len(str) == 0 即''原创 2021-05-29 19:20:32 · 100 阅读 · 0 评论