Python

【5.0】DRF之序列化组件

【一】序列化组件介绍 做序列化 做反序列化 在反序列化保存到数据库之前,做数据库校验 【1】介绍 DRF(Django REST framework)是一个用于构建基于 Django 的 Web API 的强大框架。 在 DRF 中,序列化组件是其中一个核心组件,用于在 API 请求和响应中处理数据的转换和验证。 序列化组件的主要功能是将复杂的数据结构(例如模型对象)转换为可以序列

【4.0】DRF之Request类源码分析

【一】引入 总结 新的request有个data属性,以后只要是在body体中的数据 无论什么编码格式 无论什么请求方式 取文件数据还是从 FILES 中取 取其他的属性(method/request/path...),和原来的一样 原理是:新的Request重写的__getattr__方法,通过反射取到原来的request中的属性 request.GET 现在可以使

【补充】模块与包的导入

【一】模块 一个Python文件,被别的Python文件导入使用 这个Python文件称之为模块 运行的这个Python文件称之为脚本文件 模块是一个Python文件,它可以被其他Python文件导入并使用。 模块通常包含一些相关的函数、类、变量和语句,以实现特定的功能。 通过将代码组织到多个模块中,可以提高代码的可维护性和复用性。 运行一个Python文件称为脚本文件,被其他文件

【6.0作业】

【数据准备】模型层 【一】查询用户数据 【1】查询全部用户数据 路由层 视图 【2】查询指定用户数据 路由层 视图 【二】新增用户数据 路由 后端 【1】存储方式一 将传过来的数据通过source进行序列化 【2】存储方式二 不通过 source 序列化 而是直接将数据打散 【三】修改用户数据 路由层 视图层 序列化类 【四

【6.0】DRF之序列化组件高级

【一】序列化高级之Source 【补充】on_delete的参数详解 models.CASCADE(级联删除): 当删除与该字段关联的对象时,所有相关的对象将被级联删除。例如,如果一个出版社对象被删除了,与该出版社相关联的所有图书对象也会被删除。 models.SET_DEFAULT:(设置为默认值): 当删除与该字段关联的对象时,该字段的值将设置为字段的默认值。这要求你同时定义了一个默认值。例如

【7.0】作业

【一】在原生Django中向响应头添加数据 在您的视图函数中 使用HttpResponse类创建响应对象。 通过调用响应对象的['key']来设置相应的头字段和值。 示例 在上述示例中 Custom-Header是自定义的响应头字段 Custom Value是相应的值。 【二】编写一个post接口 只能接受json编码格式,响应json格式,响应头中加入Acce

【7.0】DRF之DRF请求与响应

【一】Request类对象分析 【1】.data request.data 返回解析之后的请求体数据。类似于Django中标准的request.POST和 request.FILES属性,但提供如下特性: 包含了解析之后的文件和非文件数据 包含了对POST、PUT、PATCH请求方式解析后的数据 利用了REST framework的parsers解析器,不仅支持表单类型数据,也支持JSON数据

【8.0】DRF之DRF视图扩展类

【一】5个视图扩展类 GenericAPIView + 5个视图扩展类 + 序列化类 + Response写接口 【1】5个视图扩展类对应五个方法 查询所有数据 新增一条数据 查询单条数据 修改一条数据 删除一条数据 【2】写5个类的好处就是 解耦合,提高代码的可扩展性 这五个类不叫视图类,叫视图扩展类,需要配合GenericAPIView一起用 每个类有一个方法,以后想写哪个

【补充】on_delete的参数详解

【补充】on_delete的参数详解 models.CASCADE(级联删除): 当删除与该字段关联的对象时,所有相关的对象将被级联删除。例如,如果一个出版社对象被删除了,与该出版社相关联的所有图书对象也会被删除。 models.SET_DEFAULT:(设置为默认值): 当删除与该字段关联的对象时,该字段的值将设置为字段的默认值。这要求你同时定义了一个默认值。例如,如果一个出版社对象被删除了,与

【9.0】DRF之路由

【一】路由的写法 【1】原始写法 介绍 是指手动编写路由规则的方式。 使用path()函数或re_path()函数来定义路由规则,并将其与对应的视图函数或类关联起来。 例如 假设有一个名为book的应用,它包含了一个处理图书列表的视图函数book_list,以及一个处理单个图书详情的视图函数book_detail。 我们可以通过以下方式手动编写路由规则: 在这个例子中 第一条路由规则

【补充】Django配置文件中的参数的作用

Settings.py中的配置的作用 【1】路径相关 上述内容是在Django项目配置文件中使用pathlib模块设置项目根目录路径的操作。 在Python 3.8及更高版本中,pathlib模块提供了一种简洁且面向对象的方式来处理文件路径。 它能够跨不同操作系统(如Windows、Linux等)自动适配路径分隔符,并提供了一系列方法用于操作和查询文件路径。 该代码中的BASE_

【补充】Django中的翻译函数

【补充】Django中的翻译函数 django.utils.translation: 这是Django框架提供的翻译模块,用于处理多语言支持和翻译。 gettext_lazy() 函数: 这是一个延迟加载版本的翻译函数,用于在运行时动态地翻译字符串。 它接受一个字符串作为参数,并返回一个被翻译后的字符串对象。 _('hello'): 这是一个使用了 gettext_

【10.0】DRF之登录认证和权限频率组件

【准备数据】 【一】登录功能 【1】登录视图 【2】路由接口 注册方式一 手动注册 不需要配合视图函数中的action装饰器使用 注册方式二 自动注册 需要配合视图函数中的action装饰器使用 【3】后端返回数据结果 【补充】为什么能用user=user.obj UserToken表中有user字段 我们通过UserToken表拿到了一个UserTok

X86架构CPU下Ubuntu系统环境源码编译pytorch-gpu-2.0.1版本

本文操作步骤与 aarch64架构CPU下Ubuntu系统环境源码编译pytorch-gpu-2.0.1版本大致相同,只是CPU架构不同而已,因此这里只记录不同的地方。   重点: 一个个人心得,那就是要编译pytorch源码最好是选择docker环境,因为这种环境下配置比较纯净,一定要避免那种自己使用多年的Linux系统,那种使用多年的老系统中各种配置都比较混乱,如果这么使用往往导致最

git branch 分支信息显示

默认显示分支信息: 最新提交的在上面。 1. 正序,最新提交的在下面: 2.倒序,显示分支信息 1b8582f commit :提交产生的ID aa_null :提交分支 @{1}: 排序,加上--date参数就是 commit 时间。(git --date 常用参数 【汇总】) commit (initial): new branch :commit提交说明 3.显

p2:认识requests库的常用方法与实战

二、全面认识requests库的常用方法  requests是python第三方库安装命令方法如下:  pip install requests   python的默认的测试用来规则 1、模块名必须以test_开头或_test结尾; 2、类名必须以Test开头; 3、测试用例名必须以test_开头 Ctrl+鼠标点击,可进入该方法如下图: 三、全面认识reponse库的常用方法 四、实

盘点一个Python自动化办公需求——多个压缩包中Excel的合并

大家好,我是皮皮。 一、前言 这个事情还得从前几天在Python星耀群【Wing】问了一个Python自动化办公处理的问题,需求倒是不难,一起来看看吧。 她的需求如下:我有多个压缩文件(zip格式),每个文件里面有3个excel表、表名是一样的。请教:如何解压文件,并将文件中3个excel合并成一个表呢? 二、实现过程 这里我找她要了3个压缩包文件,后来【狂吃山楂片】给了一个答案,代码如下:

实时嵌入式Linux设备基准测试快速入门3实时嵌入式Linux

第3章实时嵌入式Linux 计算机系统与环境之间的交互通常是实时发生的,因此,对于作为计算机系统一部分的嵌入式设备来说,有关实时操作系统的讨论也是一个重要话题。 本章将讨论实时系统的特点,介绍在Linux嵌入式设备上实现实时性的主要方法。具体来说,本章将重点分析PREEMPT_RT内核补丁,该补丁可轻松应用于主线内核。然后,将分析调度延迟的概念以及导致延迟增加的主要原因。最后,结尾部分将重点介绍如

HuggingFace | 使用Roberta训练一个牛客网讨论贴文本分类模型

训练一个NLU模型 本文将使用trainer 训练一个牛客网讨论帖文本分类模型。详细过程如下: 构建数据集 数据集下载链接: train data test data 正常的训练演示用这两个数据集就够了,如果需要训练很精确的模型,可以使用伪标签大数据集generated pesudo data 数据集的结构如下: 每条数据包含一个文本和一个label,label为: [招聘信息、 经验贴、 求助

计算机名人堂

电脑 Charles Babbage 19世纪英数工发,设计一款机械通用计算设备----分析机。 Ada Lovelace  19世纪英数,为分析机编写世界上第一个程序 乔治·布尔  布尔逻辑的原型 Alan Turing 20世纪英科数,人工智能之父与密码学专家,提出解决任何可计算问题的抽象机器模型----通用图灵机。Bombe,一种破译恩尼格玛密码的机器 Claude Shannon

在 Python 中使用 Pygal 绘制世界地图

在 Python 的 Pygal 库的帮助下,我们可以在 Python 中创建令人惊叹的世界地图,因为它提供了不同的功能来创建和自定义图形。本文探讨了绘制世界地图、自定义地图样式、添加数据以突出显示国家或地区以及将地图呈现为 SVG 文件的分步过程。无论您是想可视化地理数据、展示国际统计数据还是创建交互式可视化,Pygal 都提供了一个强大的工具集,可以轻松显示全球信息。 如何在 Python 中

ChatGPT插件开发实战

1.概述 ChatGPT是一款由OpenAI推出的先进对话模型,其强大的自然语言处理能力使得它成为构建智能对话系统和人机交互应用的理想选择。为了进一步拓展ChatGPT的功能和适应不同领域的需求,OpenAI提供了插件开发平台,让开发者可以定制化和扩展ChatGPT的能力。 2.内容 OpenAI 插件将 ChatGPT 连接到第三方应用程序。这些插件使 ChatGPT 能够与开发人员定义的 AP

某行动态cookie反爬虫分析

某行动态cookie反爬虫分析 1. 预览 反爬网址(base64): aHR0cDovL3d3dy5wYmMuZ292LmNu 反爬截图: 需要先加载运行js代码,可能是对环境进行检测,反调试之类的 无限debugger 处理办法 网上大部分人说的都是添加cookie来解决。 那个noscript标签仅仅是用于提示用户的,在不支持js的浏览器展示。 本网站是动态

Python报错 | ImportError: To be able to use evaluate-metric/seqeval, you need to install the following dependencies['seqeval'] using 'pip install seqeval' for instance'

报错信息 使用metric = evaluate.load("seqeval")的时候,报如下错误: 错误原因 这个错误提示表明您的代码中使用了一个名为"seqeval"的Python包,但是它没有被安装。您需要通过运行以下命令在您的Python环境中安装"seqeval"包: 如果您使用的是虚拟环境,请激活虚拟环境后再运行上述命令。如果您使用的是Python 2.x版本,请使用命令"pip3

Python安装技术类库模块

方法1: 方法2: QQ:1061767621 Q群:215481318

操作系统复习 MITS6.1810 lab util 记录

lab util sleep 介绍:主要用来熟悉下环境以及代码结构。 See kernel/sysproc.c for the xv6 kernel code that implements the sleep system call (look for sys_sleep), user/user.h for the C definition of sleep callable from

基于面向对象的数据封装

基于面向对象的数据封装 目录基于面向对象的数据封装1 基于面向对象的数据封装优点2 示例 1 基于面向对象的数据封装优点 将属性和方法放到一起做为一个整体,然后通过实例化对象来处理; 隐藏内部实现细节,只需要和对象及其属性和方法交互就可以了; 对类的属性和方法增加 访问权限控制。 2 示例

DASCTF 2023 & 0X401七月暑期挑战赛——— 解析viphouse

DASCTF 2023 & 0X401七月暑期挑战赛——— 解析viphouse 保护策略 静态分析 main   主函数在while循环提供了一个菜单。 set_randnum   这个函数的主要作用是打开生成随机数的文件,并向变量src中读入8字节的随机数。 print_string   这个函数打印一些欢迎语。 menu   这个函数将程序提供的一些选项打印出来。 log

19正则/贪婪匹配/re模块

正则表达式介绍 正则表达式之字符组(在匹配筛选查找数据的时候可以使用正则提供的符号也可以直接写目标数据) 正则表达式之特殊符号  正则表达式之量词 课堂练习 复杂正则的编写 取消转义 贪婪匹配与非贪婪匹配 re模块    

<<  <  583  584  585  586  587  588  589  590  591  592  593  >  >>