当前位置: 首页 > news >正文

python类型转换深浅拷贝

1.类型转换

1.1 int(x):转化为一个整数,只能转换由纯数字组成的字符串

float->int

浮点型强转整形会去掉小数点后面的数,只保留整数部分

a = 1.2
print(type(a))   #<class 'float'>
b = int(a)
print(type(b))    #<class 'int'>print(int(1.8))   #1

str->int   如果字符串中有数字和正负号(在开头)以外的字符就会报错(+/-写在前面表示正负号,写在后面是加减号)

a = int('123')
print(a,type(a))   #123 <class 'int'>

从控制台输入数字的时候可以使用强制转换,input输入时默认输入的是字符串类型

age = int(input("请输入年龄"))
if age > 18:print("成年了")

1.2 float(x):转换为一个小数

整形转换为浮点型会自动添加一位小数

如果字符串中由正负号,数字和小数点以外的字符,不支持转换

print(float(11))   #11.0
print(float(-23))   #-23.0
print(float('+2.3456'))  #2.345
#print(float(10-))   报错

1.3 str(x):将对象转换为字符串类型,任何类型都可以转换

浮点型转换成str会自动去除末位为0的小数部分,保留一位小数

a = 100
print(type(a),a)   #<class 'int'> 100b = str(a)
print(type(b),b)   #<class 'str'> 100st = str(-1.8)
print(type(st),st)  #<class 'str'> -1.8st1 = str(-1.00000)
print(type(st1),st1)  #<class 'str'> -1.0st2 = str(-1.02300)
print(type(st2),st2)   #<class 'str'> -1.023

转换列表:

list = [1,2,3]
st = str(list)
print(type(st),st)   #<class 'str'> [1, 2, 3]

1.4 eval (x):用来计算在字符串中的有效python表达式,并返回表达式的值

eval非常长强大,但不够安全,容易被恶意修改数据

print(10+10)   #20
print('10'+'10')  #1010
print('10+10')   #10+10
print(eval('10+10'))  #20 执行运算,并返回运算值

eval()可以实现list、dict、tuple和str之间的转换;相当于去掉字符串的引号

st1 = '[[1,2],[3,4],[5,6]]'
print(type(st1),st1)   #<class 'str'> [[1,2],[3,4],[5,6]]li = eval(st1)
print(type(li),li)   #<class 'list'> [[1, 2], [3, 4], [5, 6]]
st2 = "{'name':'panda','age':5}"
print(type(st2),st2)  #<class 'str'> {'name':'panda','age':5}
dic = eval(st2)
print(type(dic),dic)  #<class 'dict'> {'name':'panda','age':5}

1.5 tuple(x):将可迭代对象转换为元组类型

list = [1,2,3,4]
tua = tuple(list)
print(tua,type(tua))  #(1, 2, 3, 4) <class 'tuple'>

1.6 list(x):将可迭代对象转换为列表类型

支持转换为list的类型:str 、tuple、dict、set

字典转换成列表,会取键名作为列表的值。

集合转化成列表会先去重,在转换(字母无序)。

print(list('abcdef'))      #['a','b','c','d','e','f']
print(list((1,2,3,4)))   #[1,2,3,4]
print(list({'name':'panda','age':5}))    #['name','age']
print(list({'a','b','c','b'}))    #['c','b','a']

2.深浅拷贝(只针对可变对象

2.1赋值:对于列表,字典,集合这种类型,复制就等于完全共享资源,一个值的改变会完全被另一个值共享。赋值后的对象会随着原对象一起变换。

li = [1,2,3,4]
li2 = li
print('li',li)   #li [1, 2, 3, 4]
print('li2',li2)   #li2 [1, 2, 3, 4]
li.append(5)
print('赋值后:li',li)  #赋值后:li [1, 2, 3, 4, 5]
print('赋值后:li2',li2)  #赋值后:li2 [1, 2, 3, 4, 5]

2.2浅拷贝(数据半共享)

会创建新的对象,拷贝第一层的数据,嵌套层会指向原来的内存地址

首先需要导入copy模块

查看内存地址:id()

外层的内存地址不同,内层的内存地址相同。大多数形况下都使用浅拷贝

优点:拷贝速度快,且占用空间少,拷贝效率高。

import copy #导入copy模块li = [1,2,3,[4,5,6]]
li2 = copy.copy(li)     #浅拷贝
print('li',li)    #li [1, 2, 3, [4, 5, 6]]
print('li2',li2)   #li2 [1, 2, 3, [4, 5, 6]]
print(id(li))   #2256239241864
print(id(li2))  #2256239241992内存地址不一样,不是同一对象
li.append(8)
print('赋值后:li', li)  #赋值后:li [1, 2, 3, [4, 5, 6],8]
print('赋值后:li2', li2)  #赋值后:li [1, 2, 3, [4, 5, 6]]li[3].append(7)   #往嵌套列表添加元素
print('赋值后:li', li)  #赋值后:li [1, 2, 3, [4, 5, 6,7],8]
print('赋值后:li2', li2)  #赋值后:li [1, 2, 3, [4, 5, 6,7]]
print(id(li[3]))   #2288402279240
print(id(li2[3]))   #2288402279240 内存地址相同

2.3深拷贝(数据完全不共享)

外层对象和内层元素都拷贝一遍,深拷贝数据变化只影响自己本身,和原来的对象没有关联。

也要导入copy模块

import copy #导入copy模块
li = [1,2,3,[4,5,6]]
li2 = copy.deepcopy(li)
print('li',li)    #li [1, 2, 3, [4, 5, 6]]
print('li2',li2)   #li2 [1, 2, 3, [4, 5, 6]]
print(id(li))   #2704884215048
print(id(li2))  #2704884214792内存地址不一样,不是同一对象
li.append(8)
print('赋值后:li', li)  #赋值后:li [1, 2, 3, [4, 5, 6],8]
print('赋值后:li2', li2)  #赋值后:li [1, 2, 3, [4, 5, 6]]li[3].append(7)   #往嵌套列表添加元素
print('赋值后:li', li)  #赋值后:li [1, 2, 3, [4, 5, 6,7],8]
print('赋值后:li2', li2)  #赋值后:li [1, 2, 3, [4, 5, 6,]]
print(id(li[3]))   #2704883434440
print(id(li2[3]))   #2704884215304 内存地址不同

3.可变对象

含义:存储空间保存的数据允许被修改,这种数据就是可变类型(变量对应的值可以被修改,但是内存地址不会发生改变)

常见的可变类型:列表(list)、字典(dict)、集合(set)  

li = [1,2,3,4]
print(li,id(li))   #[1, 2, 3, 4] 1886619741320
li.append(5)    #添加元素
print(li,id(li))   #[1, 2, 3, 4, 5] 1886619741320dic = {'name':'pande','age':5}
print(dic,id(dic))     #{'name': 'pande', 'age': 5} 2103573679704
dic['name'] = 'monkey'   #修改元素
print(dic,id(dic))     #{'name': 'monkey', 'age': 5} 2103573679704set = {1,2,3,4,5}
print(set,id(set))   #{1, 2, 3, 4, 5} 2769478186152
set.remove(3)    #删除元素
print(set,id(set))   #{1, 2, 4, 5} 2769478186152

4.不可变对象

含义:存储空间保存的数据不允许被修改,这种数据就是不可变类型(变量对应的值不能被修改,修改的话就会生成新的值,从而分配新的内存空间)

常见的不可变类型:数值类型(int 、bool、float、complex)、字符串(str)、元组(tuple)

元组不支持新增修改和删除操作。

n = 10
print(n,id(n))   #10 140719911371312
n = 15
print(n,id(n))   #15 140719911371472str = 'hello'
print(str,id(str))   #hello 2348660297456
str = 'world'
print(str,id(str))   #world 2348660297520tua = (1,2,3)
print(tua,id(tua))   #(1, 2, 3) 1535623178104
tua =('a','b','c')
print(tua,id(tua))   #('a', 'b', 'c') 1535623178504

相关文章:

python类型转换深浅拷贝

1.类型转换 1.1 int(x):转化为一个整数&#xff0c;只能转换由纯数字组成的字符串 float->int 浮点型强转整形会去掉小数点后面的数&#xff0c;只保留整数部分 a 1.2 print(type(a)) #<class float> b int(a) print(type(b)) #<class int>print(int…...

Kafka面试题汇总

基础篇 1、什么是 Apache Kafka&#xff1f;它的主要用途是什么&#xff1f; 2、Kafka 中的几个核心概念是什么&#xff1f;请简要说明每个概念的作用。 3、Kafka 的 Producer 和 Consumer 是如何工作的&#xff1f;它们之间的数据传递机制是什么&#xff1f; 进阶篇 1、K…...

window安装MySQL5.7

1、下载MySQL5.7.24 浏览器打开&#xff1a; https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.24-winx64.zip 2、解压缩 下载下来的是一个压缩包&#xff0c;解压到你想放到的目录下面&#xff0c;我放的是“C:\MySQL” 3、配置MySQL环境变量 计算机右键 - 属性 …...

什么是手机9008模式?如何进入9008

之前给大家分享了一些有关手机刷机的知识&#xff0c;今天给大家讲一讲如果刷机过程中不慎变砖应该如何应对&#xff08;当然了&#xff0c;希望大家都不会遇到&#xff09;&#x1f602;&#x1f604; 在给手机 Root 或刷机时&#xff0c;线刷 9008 指的是利用 高通 9008 模式…...

【jira】用到几张表

jira用到的几张表 测试计划&#xff0c;测试周期&#xff0c;测试用例&#xff0c;问题记录 1. 测试计划 # 记录表&#xff0c;查计划详情 SELECT ID,issuenum,SUMMARY FROM jiraissue where issuenum 22871# 测试计划下&#xff0c;测试周期&#xff0c;查测试周期id&…...

文件包含-session2

[题目信息]&#xff1a; 题目名称题目难度文件包含-session22 [题目考点]&#xff1a; 由于网站功能需求&#xff0c;会让前端用户选择要包含的文件&#xff0c;而开发人员又没有对要包含的文件进行安全考虑&#xff0c;就导致攻击者可以通过修改文件的位置来让后台执行任意…...

在 MySQL 的 InnoDB 存储引擎中,脏页(Dirty Page)的刷盘(Flush)时机

1. 后台线程周期性刷盘 触发机制&#xff1a; InnoDB 的 Page Cleaner 线程 会周期性地将脏页刷入磁盘&#xff0c;防止内存中脏页堆积。 触发条件&#xff1a; 脏页比例阈值&#xff1a;当 Buffer Pool 中脏页占比超过 innodb_max_dirty_pages_pct&#xff08;默认 90%&#…...

Vscode编辑器获取更新远程最新分支

解决&#xff1a;打开当前项目的终端&#xff0c;输入 git remote update origin --prune # 查看远程分支 git branch -r --prune --prune 参数告诉 Git 清理那些远程仓库中已经删除但本地仍然存在的跟踪分支。 命令作用 更新远程仓库引用&#xff1a; git remote update …...

`AdminAdminDTO` 和 `userSession` 对象中的字段对应起来的表格

以下是将更正后的表格放在最前面的回答&#xff0c;表格包含序号列&#xff0c;合并了后端 AdminAdminDTO 和前端 userSession 的所有字段&#xff0c;并标注对方没有的字段。token 字段值用省略号&#xff08;...&#xff09;表示&#xff1a; 序号字段名AdminAdminDTO (后端…...

存储引擎、索引(MySQL笔记第四期)

p.s.这是萌新自己自学总结的笔记&#xff0c;如果想学习得更透彻的话还是请去看大佬的讲解 目录 存储引擎概念InnoDB存储引擎MyISAM存储引擎Memory存储引擎存储引擎的选择 索引三种索引索引分类语法(创建/查看/删除)性能分析工具SQL执行频率慢查询日志profile详情explain执行计…...

全面汇总windows进程通信(二)

在Windows操作系统下,实现进程间通信(IPC, Inter-Process Communication)有几种常见的方法,包括使用管道(Pipe)、共享内存(Shared Memory)、消息队列(Message Queue)、命名管道(Named Pipe)、套接字(Socket)等。本文介绍如下几种: 信号量(Semaphore)和互斥量(…...

【大模型】蓝耘智算云平台快速部署DeepSeek R1/R3大模型详解

目录 一、前言 二、蓝耘智算平台介绍 2.1 蓝耘智算平台是什么 2.2 平台优势 2.3 应用场景 2.4 对DeepSeek 的支持 2.4.1 DeepSeek 简介 2.4.2 DeepSeek 优势 三、蓝耘智算平台部署DeepSeek-R1操作过程 3.1 注册账号 3.1.1 余额检查 3.2 部署DeepSeek-R1 3.2.1 获取…...

心理咨询小程序的未来发展

还在眼巴巴看着心理咨询行业的巨大蛋糕却无从下口&#xff1f;今天就来聊聊心理咨询小程序的无限潜力 据统计&#xff0c;全球超 10 亿人受精神心理问题困扰&#xff0c;国内心理健康问题也日益突出&#xff0c;心理咨询需求猛增。可传统心理咨询预约难&#xff0c;费用高&…...

硬件工程师入门教程

1.欧姆定律 测电压并联使用万用表测电流串联使用万用表&#xff0c;红入黑出 2.电阻的阻值识别 直插电阻 贴片电阻 3.电阻的功率 4.电阻的限流作用 限流电阻阻值的计算 单位换算关系 5.电阻的分流功能 6.电阻的分压功能 7.电容 电容简单来说是两块不连通的导体加上中间的绝…...

大模型本地部署硬件资源学习(包含模型微调所需资源)

大模型本地部署硬件配置学习 前言1.大模型应用需求分析扩展框架2.华为昇腾算力3.显卡信息汇总对比表4.大模型微调显卡资源指南&#xff08;Qwen系列与DeepSeek蒸馏模型&#xff09;一、Qwen系列模型微调显存需求二、DeepSeek-R1蒸馏模型微调显存需求三、显存优化策略与硬件选型…...

【DeepSeek系列】05 DeepSeek核心算法改进点总结

文章目录 一、DeepSeek概要二、4个重要改进点2.1 多头潜在注意力2.2 混合专家模型MoE2.3 多Token预测3.4 GRPO强化学习策略 三、2个重要思考3.1 大规模强化学习3.2 蒸馏方法&#xff1a;小模型也可以很强大 一、DeepSeek概要 2024年&#xff5e;2025年初&#xff0c;DeepSeek …...

Java基础常见的面试题(易错!!)

面试题一&#xff1a;为什么 Java 不支持多继承 Java 不支持多继承主要是为避免 “菱形继承问题”&#xff08;又称 “钻石问题”&#xff09;&#xff0c;即一个子类从多个父类继承到同名方法或属性时&#xff0c;编译器无法确定该调用哪个父类的成员。同时&#xff0c;多继承…...

山东大学软件学院nosql实验四

实验题目&#xff1a; 使用Java做简单数据插入 实验内容 用API方式&#xff0c;做数据插入。 使用Java语言实现数据插入界面&#xff0c;为实验一建立的学生、教师、课程表插入数据&#xff0c;可以在前端界面中录入数据之后保存&#xff0c;也可以导入Excel中的数据。 实…...

Linux | man 手册使用详解

注&#xff1a;本文为 “Linux man 手册” 相关文章合辑。 略作重排。 man 手册常用命令 1. 查看和搜索手册页 查看特定软件包的手册页&#xff0c;并使用 grep 命令过滤出包含特定关键字的行&#xff1a; man <package> | grep <keyword>在整个系统的手册页中…...

初阶数据结构(C语言实现)——1数据结构前言

1. 什么是数据结构 数据结构(Data Structure)是计算机存储、组织数据的方式&#xff0c;指相互之间存在一种或多种特定关系的数据元素的集合。 2.什么是算法&#xff1f; 算法(Algorithm):就是定义良好的计算过程&#xff0c;他取一个或一组的值为输入&#xff0c;并产生出一…...

Windows - 通过ssh打开带有图形界面的程序 - 一种通过计划任务的曲折实现方式

Windows(奇思妙想) - 通过ssh打开带有图形界面的程序 - 一种通过计划任务的曲折实现方式 前言 Windows启用OpenSSH客户端后就可以通过SSH的方式访问Windows了。但是通过SSH启动的程序&#xff1a; 无法显示图形界面会随着SSH进程的结束而结束 于是想到了一种通过执行“计划…...

基于 SpringBoot 的 “电影交流平台小程序” 系统的设计与实现

大家好&#xff0c;今天要和大家聊的是一款基于 SpringBoot 的 “电影交流平台小程序” 系统的设计与实现。项目源码以及部署相关事宜请联系我&#xff0c;文末附上联系方式。 项目简介 基于 SpringBoot 的 “电影交流平台小程序” 系统设计与实现的主要使用者分为 管理员 和…...

工具方法 - 合规性矩阵

Compliance matrix &#xff08;合规性矩阵&#xff09;是产品需求管理中的一个重要工具&#xff0c;它是用来识别、跟踪、监控和组织所有客户和利益相关方需求是否被满足的工具。具体来说&#xff0c;Compliance matrix需要用一行一行的证据来证明被设计的产品针对每个需求的实…...

2.2 STM32F103C8T6最小系统板的四种有关固件的开发方式

2.2.1 四种有关固件的开发方式 四种有关于固件的开发方式从时间线由远及近分别是&#xff1a;寄存器开发、标准外设驱动库开发、硬件抽象层库开发、底层库开发。 四种开发方式各有优缺点&#xff0c;可以参考ST官方的测试与说明。 1.寄存器开发 寄存器编程对于从51等等芯片过渡…...

go 环境准备

配置路径&#xff1a; GOROOT&#xff1a;D:\GoGOPATH&#xff1a;go的工作目录 D:\workspacego 验证版本&#xff1a;go version 配置第三方仓库&#xff1a; GO111MODULE&#xff1a;开启mod模式GOPROXY&#xff1a;go语言三方库地址GOSUMDB&#xff1a;go语言软件包的M…...

VMware安装Centos 9虚拟机+设置共享文件夹+远程登录

一、安装背景 工作需要安装一台CentOS-Stream-9的机器环境&#xff0c;所以一开始的安装准备工作有&#xff1a; vmware版本&#xff1a;VMware Workstation 16 镜像版本&#xff1a;CentOS-Stream-9-latest-x86_64-dvd1.iso &#xff08;kernel-5.14.0&#xff09; …...

高中数学基础-平面向量

文章目录 1、平面向量2、复数 高中数学-平面向量、复数 1、平面向量 向量&#xff1a;具有大小和方向的量称为向量&#xff1b;物理学中向量也称矢量&#xff0c;只有大小没有方向的量称为标量&#xff1b;向量的大小称为模&#xff0c;大小为1的是单位向量&#xff0c;长度为0…...

v4l2子系统学习(三)编写虚拟摄像头驱动

文章目录 1、声明2、前言3、虚拟摄像头驱动编写3.1、编写硬件相关代码3.2、程序示例 1、声明 本文是在学习韦东山《驱动大全》V4L2子系统时&#xff0c;为梳理知识点和自己回看而记录&#xff0c;全部内容高度复制粘贴。 韦老师的《驱动大全》&#xff1a;商品详情 其对应的…...

堆排序(详解)c++

堆排序 &#xff08;可以⽤ ppt 演⽰流程&#xff09; 堆排序(Heap Sort)是指利⽤堆这种数据结构所设计的⼀种排序算法。本质上是优化了选择排序算法&#xff0c;选择排序的思想是在堆排序元素中拿出最大值或最小值&#xff0c;然后把这个位置的值放在它该放的位置上就可以了&a…...

API测试工具:Swagger vs Postman 2025最新全面对比

随着微服务架构的普及和云原生应用的激增&#xff0c;高效的 API 开发、测试和文档管理工具变得越来越重要。在众多 API 工具中&#xff0c;Swagger 和 Postman 各自以不同的方式解决着 API 开发生命周期中的关键问题&#xff0c;本文将从多个维度深入对比这两款工具&#xff0…...

算法-图-数据结构(邻接矩阵)-BFS广度优先遍历

邻接矩阵广度优先遍历&#xff08;BFS&#xff09;是一种用于遍历或搜索图的算法&#xff0c;以下是具体介绍&#xff1a; 1. 基本概念 图是一种非线性的数据结构&#xff0c;由顶点和边组成&#xff0c;可分为无向图、有向图、加权图、无权图等。邻接矩阵是表示图的一种数…...

List的模拟实现(2)

前言 上一节我们讲解了list的基本功能&#xff0c;那么本节我们就结合底层代码来分析list是怎么实现的&#xff0c;那么废话不多说&#xff0c;我们正式进入今天的学习&#xff1a;&#xff09; List的底层结构 我们先来看一下list的底层基本结构&#xff1a; 这里比较奇怪的…...

【C++设计模式】观察者模式(1/2):从基础到优化实现

1. 引言 在 C 软件与设计系列课程中&#xff0c;观察者模式是一个重要的设计模式。本系列课程旨在深入探讨该模式的实现与优化。在之前的课程里&#xff0c;我们已对观察者模式有了初步认识&#xff0c;本次将在前两次课程的基础上&#xff0c;进一步深入研究&#xff0c;着重…...

可狱可囚的爬虫系列课程 13:Requests使用代理IP

一、什么是代理 IP 代理 IP&#xff08;Proxy IP&#xff09;是一个充当“中间人”的服务器IP地址&#xff0c;用于代替用户设备&#xff08;如电脑、手机等&#xff09;直接与目标网站或服务通信。用户通过代理IP访问互联网时&#xff0c;目标网站看到的是代理服务器的IP地址&…...

冒险岛079 V8 整合版源码搭建教程+IDEA启动

今天教大家来部署下一款超级怀旧游戏冒险岛&#xff0c;冒险岛源码是开源的&#xff0c;但是开源的代码会有各种&#xff0c;本人进行了加工整合&#xff0c;并且用idea进行了启动测试&#xff0c;经过修改后没有任何问题。 启动截图 后端控制台 前端游戏界面 声明 冒险岛源码…...

Web刷题之PolarDN(中等)

1.到底给不给flag呢 代码审计 一道典型的php变量覆盖漏洞 相关知识 什么是变量覆盖漏洞 自定义的参数值替换原有变量值的情况称为变量覆盖漏洞 经常导致变量覆盖漏洞场景有&#xff1a;$$使用不当&#xff0c;extract()函数使用不当&#xff0c;parse_str()函数使用不当&…...

[250224] Yaak 2.0:Git集成、WebSocket支持、OAuth认证等 | Zstandard v1.5.7 发布

目录 Yaak 2.0 发布&#xff1a;Git 集成、WebSocket 支持、OAuth 认证等众多功能&#xff01;Zstandard v1.5.7 发布&#xff1a;性能提升&#xff0c;稳定性增强 Yaak 2.0 发布&#xff1a;Git 集成、WebSocket 支持、OAuth 认证等众多功能&#xff01; Yaak&#xff0c;一款…...

插入排序:一种简单而直观的排序算法

大家好&#xff01;今天我们来聊聊一个简单却非常经典的排序算法——插入排序&#xff08;Insertion Sort&#xff09;。在所有的排序算法中&#xff0c;插入排序是最直观的一个。 一、插入排序的基本思想 插入排序的核心思想是&#xff1a;将一个待排序的元素&#xff0c;插…...

vue2响应式数据原理

1. 核心原理 Vue 2 的响应式系统基于 Object.defineProperty&#xff0c;通过 依赖收集 和 派发更新 来实现数据的响应式 依赖收集&#xff1a;在读取数据时&#xff0c;记录哪些函数&#xff08;或组件&#xff09;依赖了该数据。派发更新&#xff1a;在修改数据时&#xff…...

对免认证服务提供apikey验证

一些服务不带认证&#xff0c;凡是可以访问到服务端口&#xff0c;都可以正常使用该服务&#xff0c;方便是方便&#xff0c;但是不够安全。 比如ollama默认安装后就是这样。现在据说网上扫一下端口11434&#xff0c;免apikey的ollama服务一大堆。。。 那我们怎样将本机安装的o…...

算法——Trie 树

Trie 树&#xff08;前缀树或字典树&#xff09;是一种高效处理字符串集合的树形数据结构&#xff0c;核心思想是通过共享公共前缀来优化存储和查询。以下是 Trie 树的详细介绍&#xff1a; 1. Trie 树的基本概念 结构特点&#xff1a; 每个节点表示一个字符。从根节点到某一节…...

python中的JSON数据格式

文章目录 什么是json主要功能Python数据和Json数据的相互转化 什么是json JSON是一种轻量级的数据交互格式。可以按照JSON指定的格式去组织和封装数据。JSON本质上是一个带有特定格式的字符串。 主要功能 json就是一种在各个编程语言中流通的数据格式&#xff0c;负责不同编…...

服务器能否拒绝非浏览器发起的HTTP请求?

互联网各领域资料分享专区(不定期更新): Sheet 前言 服务器可以采取多种方法来拒绝非浏览器发起的HTTP请求,但需要明确的是:HTTP协议本身并不限制客户端类型,任何符合协议规范的请求都会被处理。因此,拒绝非浏览器请求需依赖额外策略。 正文 一、基于请求头过滤 1、Us…...

深度学习之图像分类(二)

前言 文章主要是通过实战项目——食品分类来理解分类项目的整体流程。除此之外&#xff0c;还需要对半监督学习&#xff0c;迁移学习&#xff0c;数据增广&#xff0c;Adam和AdamW进行了解。 数据增广 图片增广&#xff08;Image Data Augmentation&#xff09;是深度学习中一种…...

数据库高安全—openGauss安全整体架构安全认证

openGauss作为新一代自治安全数据库&#xff0c;提供了丰富的数据库基础安全能力&#xff0c;并逐步完善各类高阶安全能力。这些安全能力涵盖了访问登录认证、用户权限管理、审计与追溯及数据安全隐私保护等。本章节将围绕openGauss安全机制进行源码解读&#xff0c;以帮助数据…...

利用开源小智AI制作桌宠机器狗

本文主要介绍如何利用开源小智AI制作桌宠机器狗 1 源码下载 首先下载小智源码,下载地址, 下载源码后,使用vsCode打开,需要在vscode上安装esp-idf,安装方式请自己解决 2 源码修改 2.1添加机器狗控制代码 在目录main/iot/things下添加dog.cc文件,内容如下; #include…...

uniapp在app下使用mqtt协议!!!支持vue3

什么&#xff1f;打包空白&#xff1f;分享一下我的解决方法&#xff01; 第一步 找大师算过了&#xff0c;装4.1版本运气好&#xff01; 所以根目录执行命令… npm install mqtt4.1.0第二步 自己封装一个mqtt文件方便后期开坛做法&#xff01; // utils/mqtt.js import mqt…...

Orange 开源项目 - 集成阿里云大模型

1 阿里云的大模型服务平台百炼 阿里云的大模型服务平台百炼是一站式的大模型开发及应用构建平台。不论是开发者还是业务人员&#xff0c;都能深入参与大模型应用的设计和构建。您可以通过简单的界面操作&#xff0c;在5分钟内开发出一款大模型应用&#xff0c;或在几小时内训练…...

DSP芯片C6678的SRIO及其中断跳转的配置

C6678SRIO读写测试门铃中断跳转测试 SRIO简述代码前言SRIO配置原始代码1.使能电源2.初始化SRIO回环修改 3.SRIO测试 Doorbell门铃中断1.初始化中断函数2.中断向量表建立3.中断向量表的链接 本博客基于创龙“678ZH产品线”的SRIO代码&#xff0c;部分参考于网友们的博客&#xf…...

MongoDB#常用脚本

批量插入数据脚本 const oneDayAgo new Date(Date.now() - 1 * 24 * 60 * 60 * 1000);const documents []; for (let i 1; i < 100; i) {documents.push({id: i, // 递增的 idcreateTime: oneDayAgo, // 1天前的日期data: Sample data ${i} // 其他字段&#xff08;可选…...