Python3基础语法
一:注释
Python中用#表示单行注释,#之后的同行的内容都会被注释掉。
使用三个连续的双引号表示多行注释,两个多行注释标识之间内容会被视作是注释。
二:基础变量类型与操作符
1. 除法
* 除法 / python3中就算是两个整数相除,得到的也是小数。
- 两个除号表示取整数,Python会为我们保留去除余数的结果。
2.乘方
乘方运算使用**符号
print(f"{2**3}");
3.逻辑运算
用 and 表示与操作,or表示或操作,not表示非操作。而不是c++或者java中的 &&,||和 !
flag = True;
print(f"输出 true 的值 {flag}");flag = not True;
print(f"输出 not True 的值 {flag}");flag = not False;
print(f"输出 not False 的值 {flag}");flag = True and False;
print(f"输出 True and False 的值 {flag}");flag = True or False;
print(f"输出 True or False 的值 {flag}");
4.is
list的判断,一般有两种,除了 == 还有一种是 is。
Python是全引用的语言,其中的对象都是用引用来表示。is判断的就是两个应用是否执行同一个对象,而 == 则是判断两个引用指向的具体内容是否相等。
a = [1,2,3,4]
b = a
print(f"b is a: {b is a}")
print(f"b == a: {b == a}")
b = [1,2,3,4]
print(f"b is a: {b is a}")
print(f"b == a: {b == a}")
5.None
Python中None也是一个对象,所有为None的变量都会指向这个对象。所以判断一个变量是否是None时,可以使用is来进行判断,也可以用==。
6.bool()
作用,判断值是否为空,所有类型的默认空值会被返回False,否则都是True.比如0,"",[],{},()等
value = bool(None)
print(f"bool(None) 的值: {value}")
value = bool(0)
print(f"bool(0) 的值: {value}")
value = bool("")
print(f"bool(\"\") 的值: {value}")
value = bool([])
print(f"bool([]) 的值: {value}")
value = bool({})
print(f"bool({{}}) 的值: {value}")
value = bool(())
print(f"bool(()) 的值: {value}")
三. 变量与集合
3.1输入输出
Python当中的标准输入输出是input 和 print.
print会输出一个字符串,如果传入的不是字符串会自动调用str方法转成字符串进行输出。
默认输出会自动换行,如果想要以不同的字符结尾代替换行,可以传入end参数:
3.2变量
Python中声明对象,变量不需要带上类型,直接赋值即可,Python会自动关联类型,如果使用之前没有声明过的变量则会出现NameError异常
- 三元表达式
"python" if 3 > 2 else 2
#等价于下面这段代码
if 3 > 2:return 'python'
else:return 2
- 多个变量赋值
Python 允许同时为多个变量赋值
#创建一个整型对象,值为1,从后向前赋值,三个变量被赋予相同的数值
a = b = c = 1#为多个对象指定多个变量
a,b,c = 1,2,"python"
#1和2分配给变量a和b,字符串对象"python"分配给变量c
3.3标准数据类型
Python3中常见的数据类型有
- Number(数字)
- String(字符串)
- bool(布尔类型)
- List(列表)
- Tuple(元组)
- Set(集合)
- Dictionary(字典)
Python3的六个标准数据类型中
- 不可变数据3个:Number(数字),String(字符串),Tuple(元组)
- 可变数据3个:List(列表),Dictionary(字典),Set(集合)
此外还有一些高级的数据类型,如:字节数组类型(bytes).
3.4 数据容器list-列表
- Python中用[]表示空的list,可以直接在其中填充元素进行初始化。
- 列表中元素类型可以不相同,支持数字,字符串和列表(嵌套)。
- 和字符串一样,列表可以被索引和截取,被截取后返回一个包含所需元素的新列表。
3.3.1 +和*
加号 + 是列表连接运算符,星号*是重复操作。
3.3.2 append和pop
li = []
other_li = [4,5,6]
#使用append和pop在list的末尾插入或者删除元素
other_li.append(1)
other_li.append(2)
other_li.pop()
3.3.3 []加下标
[]加下标访问指定位置的元素,如果是负数,则表示倒序访问。-1表示最后一个元素,-2表示倒数第二个。超过范围,则为IndexError错误。
print(li[0])
print(li[-1])
3.3.4切片 start:end
切片是指从原list中拷贝出指定的一段。使用start:end语法,左闭右开。留空表示全部。
在加一个":"后跟数字,这个数字表示步长,步长为负表示逆向读取。步长 为1,正常顺序取,步长为2,间隔一个。
list = [0,1,2,3,4,5,6] print("list=",list)
print("list[0:1]=",list[0:1])
print("list[0:2]=",list[0:2])
print("list[0:3]=",list[0:3])
print("list[0:3:1]=",list[0:3:1])
print("list[0:3:2]=",list[0:3:2])
3.5数据容器Tuple(元组)
元组(tuple)与列表类似,区别是元组的元素不能修改。元组写在小括号()里,用逗号隔开。元组中的元素类型也可不同。
#list可变
list = [1,2,3,5,6]
list[0] = 2#tup不可变,会报错
tup = (1,2,3,4,5,6)
print(tup[0])
tup[0] = 2
- tuple的元素不可改变,但它可以包含可变的对象,比如list列表。
- 构造包含0个或1个元素的元组比较特殊,所以有一些额外的语法:
tup1=() #空元组
tup2=(20,) #一个元素,需要在元素后添加逗号
如果创建只有一个元素的元组,需要注意在元素后面添加一个逗号,以区分它是一个元组而不是一个普通的值,这是因为在没有逗号的时候,Python会将括号解释为数学运算中的括号,而不是元组。
元组总结
- 1.与字符串一样,元组的元素不能修改
- 2.元组也可以被索引和切片,方法一样
- 3.注意构造包含0或1个元素的特殊语法规则
- 4.元组也可以使用+操作符进行拼接
3.6Set(集合)
- Python中的集合(set)是一种无序,可变的数据类型,用于存储唯一的元素
- 集合中的元素不会重复,并且可以进行交集,并集,差集等常见的集合操作
- 在Python中,集合使用大括号{}表示,元素之间用逗号,分隔
- 可以用set()函数创建集合
- 创建一个空集合必须用set(),而不是{},因为{}是用来创建空字典
sites = {'Python','Python','Java','C#','C++','C','Go'}
print(sites) #数据集合,重复的元素被自动去掉#成员测试
if 'Python' in sites:print('Python 在集合中')
else:print('Python不在集合中')#set可以进行集合运算
a = set('abcdefg')
b = set('abcd123')print("a",a)print("b",b)print("差集",a-b) # a 和 b 的差集print("并集",a | b) #a 和 b 的并集print("交集",a & b) #a 和 b 的交集print("不同时存在",a ^ b) #a 和 b 中不同时存在的元素
3.7Dictionary(字典)
- 字典(dictionary)是Python中另一个非常有用的内置数据类型。
- 列表是有序的对象集合,字典是无序的对象集合。两者直接的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取
- 字典是一种映射类型,字典用{} 标识,它是一个无序的键(key):值(value)的集合。
- 键(key)必须使用不可变类型
- 在同一个字典中,键(key)必须是唯一的。
dict2 = {}
dict2['one'] ='Python'
dict2[2] = "Java"tinydict = {'name':'chao','age':18,'hoby':'Python'}print(dict2['one']) #输出键为 'one'的值
print(dict2[2]) #输出键为2 的值
print(tinydict) #输出所有的字典值
print(tinydict.keys()) #输出所有键
print(tinydict.values()) #输出所有值#构造函数 dict()可以直接从键值对序列中构建字典
dic3 = dict([('Python',1),('Java',2),('C++',3)])dic4 = {x:x**2 for x in(2,4,6)}
print(dic4)
注意:
- 1.字典是一种映射类型,它的元素是键值对
- 2.字典的关键字必须为不可变类型,且不能重复
- 3.创建空字典使用{}
3.8bytes类型
在Python3中,bytes类型表示的是不可变的二进制序列(byte sequence)
与字符串类型不同的是,bytes类型中的元素是整数值(0到255之间的整数),而不是Unicode字符
bytes类型通常用于处理二进制数据,比如图像文件,音频文件,视频文件等等。在网络编程中,也经常使用bytes类型来传输二进制数据。
创建bytes对象的方式有多种,最常见的方式是使用b前缀:
此外,也可以使用bytes()函数将其他类型的对象转换为bytes类型。bytes()函数的第一个参数是要转换的对象,第二个参数是编码方式,如果省略第二个参数,则默认使用UTF-8编码:
x = bytes("hello",encoding="utf-8")
与字符串类型类似,bytes类型也支持许多操作和方法,如切片,拼接,查找,替换等等。同时,由于bytes类型是不可变的,因此在进行修改操作时需要创建一个新的bytes对象。
x = b"hello"
y = x[1:3] #切片操作,得到b"el"
z = x + b"world" #拼接操作,得到b"helloworld"
需要注意的是,bytes类型中的元素是整数值,因此在进行比较时需要使用相应的整数值。例如:
x = b"hello"
if x[0] == ord("h"):print("The first element is 'h'")
#ord()函数用于将字符转换为相应的整数值
3.9import与from...import
导入模块(somemodule) | import somemodule | |
从某个模块中导入某个函数 | from somemodule import somefunction | |
从某个模块中导入多个函数, | from somemodule import firstfunc, secondfunc | |
将某个模块中的全部函数导入 | from somemodule import * |
#导入sys模块
import sys
print("=========python import mode============")
print("命令行参数为:")
for i in sys.argv:print("for 内的sys.argv=",i)
print("\n python 路径为",sys.path)#导入sys模块的argv,path成员
from sys import argv,path
print("===============pthon from import===============")
print("path:",path) #因为已经导入path成员,所以此处引用时使用path,而不需要加sys.
相关文章:
Python3基础语法
一:注释 Python中用#表示单行注释,#之后的同行的内容都会被注释掉。 使用三个连续的双引号表示多行注释,两个多行注释标识之间内容会被视作是注释。 二:基础变量类型与操作符 1. 除法 * 除法 / python3中就算是两个整数相除&a…...
QEMU源码全解析 —— 块设备虚拟化(20)
接前一篇文章:QEMU源码全解析 —— 块设备虚拟化(19) 本文内容参考: 《趣谈Linux操作系统》 —— 刘超,极客时间 《QEMU/KVM源码解析与应用》 —— 李强,机械工业出版社 特此致谢! 上一回大致解析了drive_new函数,本回重点对于drive_new函数中调用的blockdev_init函…...
JavaScript 笔记 --- part 4 --- Web API (part 2)
(webAPI part2) DOM 基本操作 事件流 定义: 指的是事件完整执行过程中的流动路径 捕获阶段: 事件从最外层的窗口对象开始,逐层向内传播到目标元素,并触发相应的事件处理程序。 冒泡阶段: 事件从目标元素开始,逐层向外传播到最外层的窗口对象…...
从入门到精通汇编语言 第六章(中断及外部设备操作)
参考教程:通俗易懂的汇编语言(王爽老师的书)_哔哩哔哩_bilibili 一、移位指令 1、8个移位指令 (1)逻辑左移指令SHL:SHL OPR, CNT。 ①OPR为操作数,CNT为左移位数,该指令将OPR视作…...
PySide6 GUI 学习笔记——常用类及控件使用方法(常用类尺寸QSizeF)
QSizeF 类(浮点尺寸类) 文章目录 QSizeF 类(浮点尺寸类)概述主要方法列表详细说明及应用举例注意事项 概述 QSizeF 类使用浮点精度定义二维对象的尺寸。官方文档在这里。 主要方法列表 __init__(self) …...
操作系统中的虚拟化技术深度对话
操作系统中的虚拟化技术深度对话 参与者:系统工程师(Engineer)、开发者(Developer)、学生(Student) 1. 虚拟化的基本概念 Student:虚拟化到底是什么?为什么操作系统需要…...
第35讲:构建属于自己的遥感大模型平台,并接入地理数据工作流
目录 🌍 写在前面 一、为什么要构建属于自己的遥感大模型平台? 二、核心技术选型推荐 ✅ 前端部分 ✅ 后端部分 ✅ 部署平台 三、平台架构设计思路 四、案例实战:构建一个在线遥感分割平台 📌 第一步:模型服务封装(FastAPI) 📌 第二步:前端上传与展示(L…...
langchain-nextjs-template 模板安装与配置
前提条件: node安装yarn 安装:npm install -g yarn 目录 1. 克隆项目2. 安装依赖3. 配置环境变量4. 修改模型配置5. 启动开发服务器6. 项目结构说明7. 功能说明8. 自定义提示模板部分过程文件截图 1. 克隆项目 首先,从 GitHub 克隆 LangCha…...
安卓单机斗地主,具备休闲挑战等多模式
软件介绍 斗地主单机版是一款超适合在安卓设备上玩的游戏。当你周末玩网游玩累了的时候,它就是个很不错的选择哦。 多种模式可选 这个斗地主单机版有不同的模式呢,有休闲模式、挑战模式、炸弹场和大师赛。你可以根据自己的喜好随意挑选模式,…...
电解电容失效分析过程、失效分析报告
参考: 深度剖析关键电子元器件电解电容内部故障隐患 电解电容的参数指标 电路板中电解电容是存在寿命的,电解电容中的电解液随着时间会慢慢减少导致电容容值降低,最终导致电源出现问题。相信大家都见过电解电容鼓包的情况。 所以做设计的时…...
Ubuntu修改Swap交换空间大小
前言: 安装Ubuntu系统时,选择了默认空间分配方案,Swap空间仅1G,而实际的物理内存有32G,分给Swap空间至少为内存的1倍,最好是内存值的2倍,系统相当卡顿,重做系统后,费力部…...
SpringBoot 知识图谱
预警:本文非常长,建议先 mark 后看,也许是最后一次写这么长的文章说明:前面有 4 个小节关于 Spring 的基础知识,分别是:IOC 容器、JavaConfig、事件监听、SpringFactoriesLoader 详解,它们占据了本文的大部分内容,虽然它们之间可能没有太多的联系,但这些知识对于理解 …...
智谱开源新一代GLM模型,全面布局AI智能体生态
2024年4月15日,智谱在中关村论坛上正式发布了全球首个集深度研究与实际操作能力于一体的AI智能体——AutoGLM沉思。这一革命性技术的发布标志着智谱在AGI(通用人工智能)领域的又一次重要突破。智谱的最新模型不仅推动了AI智能体技术的升级&am…...
一文读懂Python之numpy模块(34)
一、模块简介 numpy是Python语言中做科学计算的基础库,重在于数值计算,有一个强大的N维数组对象Array,同时NumPy 提供了大量的库函数和操作,可以帮助程序员轻松地进行Array数值计算。 numpy在数据分析和机器学习领域被广泛使用。…...
Lora 微调自定义device_map
Lora 微调自定义device_map 首先查看模型权重参数配置model.safetensors.index.json 查看多少解码器 这里的layer可以理解为解码器层,后面有qkv,bais,layernomal等 # 显卡数量 num_gpus = 5 # 总层数 num_layers = 28layers_per_gpu = num_layers // num...
二叉树的顺序结构及实现
一.二叉树的顺序结构 二.堆的概念及结构 三.堆的实现 一.二叉树的顺序结构 普通的二叉树是不适合用数组来存储的,因为可能会存在大量的空间浪费。而完全二叉树更适合使用顺序结构存储。现实中我们通常把堆 ( 一种二叉树 ) 使用顺序结构的数组来存储。 二.堆的概念…...
python生成项目依赖文件requirements.txt
文章目录 通过pip freeze去生成通过pipreqs去生成 通过pip freeze去生成 pip freeze > requirements.txt会将整个python的Interceptor的环境下lib包下所有的依赖都生成到这个文件当中,取决于我们使用的python的版本下所有的安装包。不建议使用这种方式ÿ…...
Cribl 对Windows-xml log 进行 -flatten-03
The Flatten Function Description The Flatten Function is used to flatten fields out of a nested structure. Lets flatten the _raw JSON object, to further reduce the events size before we send it to the intended destination(s). Steps – Adding a Flatten…...
Java优雅实现判空方法
在 Java 开发中,频繁的 if (obj ! null) 判空代码会导致代码冗余、可读性差,且容易遗漏判空导致 NullPointerException。以下从 语言特性、设计模式、工具类 和 编码规范 四个维度,结合实际案例,详解如何优雅处理空值问题。 一、…...
leetcode 1035. Uncrossed Lines
题目描述 本题本质上就是求nums1和nums2的最长公共子序列的长度。因此本题本质上与第1143题一模一样。 代码: class Solution { public:int maxUncrossedLines(vector<int>& nums1, vector<int>& nums2) {//本题等价于求nums1和nums2的最长公…...
windows上部署本地知识库(RAG)ollama + docker + ragflow方案
一、部署ollama 如何部署本地部署ollama参照我另一篇博客:Windows安装ollama部署本地大模型_ollama 在哪里运行的大模型-CSDN博客 二、部署docker 1、下载docker: 下载地址: Docker: Accelerated Container Application Development 2、winds(winds11)安装或者更新ws…...
多Agent框架及协作机制详解
文章目录 一、多智能体系统介绍1.1 多智能体系统定义1.2 多智能体协作1.3 协作类型1.4 协作策略1.5 通信结构1.6 协调与编排 1.3 多智能体与单智能体对比1.4 应用场景 二、多Agent开发框架AutoGenMetaGPTLangGraphSwarmCrewAI 三、多智能体协作方式3.1 MetaGPT:SOP驱…...
Cribl 对Windows-xml log 进行 -Removing filed-06
Removing Fields Description The Eval Function can be used to add or remove fields. In this example we will remove the extracted fields while preserving _raw, _time,index,source, sourcetype. Steps - Adding an Eval Function...
Linux 常用指令用户手册
Linux 常用指令用户手册 适合新手入门 & 日常速查 目录 基础操作文件与目录管理权限与所有权文本处理压缩与解压系统监控网络操作进程管理实用小技巧 1. 基础操作 1.1 查看系统信息 # 查看内核版本 uname -a# 查看系统发行版信息(适用于 Debian/Ubuntu&…...
Java EE(20)——线程安全——ThreadLocal
1.前言 在面的线程安全相关的博文中,解决线程安全问题的方法主要使用synchronized和volatile两个关键字。引发线程安全问题的根本原因是多个线程同时对共享变量进行写操作,而上述两个关键字并没有改变"多个线程写同一个变量"这个情况。以sync…...
树莓派超全系列教程文档--(36)树莓派条件过滤器设置
树莓派条件过滤器设置 条件过滤器[all] 过滤器型号过滤器[none] 过滤器[tryboot] 过滤器[EDID*] 过滤器序列号过滤器GPIO过滤器组合条件过滤器 文章来源: http://raspberry.dns8844.cn/documentation 原文网址 条件过滤器 当将单个 SD 卡(或卡图像&am…...
Vue3核心源码解析
/packages/complier-core 定位:编译时核心,处理 Vue 模板的编译逻辑。核心功能: 模板解析:将 .vue 文件的模板语法(HTML-like)解析为 抽象语法树 (AST)。转换优化…...
JavaScript解密实战指南:从基础到进阶技巧
JavaScript加密技术广泛应用于数据保护、反爬虫和代码混淆,但掌握解密方法能帮助开发者突破技术壁垒。本文结合爬虫实战与安全分析场景,系统梳理JS解密的核心方法与工具。 一、基础解密方法 1. Base64解码 适用于简单编码场景,如Cookie加密…...
指针(2)
1.数组名的理解 使用指针访问数组的内容时,有这样的代码: int arr[10]{1,2,3,4,5,6,7,8,9,10}int * p&arr[0]; &arr[0] 的方式拿到了数组的第一个元素的地址,但是其实数组名本来就是地址,而且还是首元素的地址…...
Android开发中广播(Broadcast)技术详解
在 Android 开发中,广播(Broadcast) 是一种广泛使用的组件通信机制,它允许应用程序在不直接交互的情况下传递消息。本文将详细讲解 Android 广播的基本概念、类型、发送与接收流程、使用场景及注意事项,并结合具体的代…...
Python网络爬虫设计(三)
目录 一、需要登录的爬虫 二、pyppeteer与requests库结合 1、cookie和session 三、其他 1、绝对网址和相对网址 2、sleep函数 一、需要登录的爬虫 在众多种类的页面中,不同的页面有不同的功能,有的是进行展示的,而有的则是登录类的。在…...
【深度学习—李宏毅教程笔记】各式各样的 Attention
目录 一、普通 Self-Attention 的痛点 二、对 Self-Attention 的优化方式 1、Local Attention / Truncated Attention 2、Stride Attention 3、Global Attention 4、知名的 Self-Attention 的变形的应用 (1)Longformer (2)…...
leetcode 1143. Longest Common Subsequence
目录 题目描述 第一步,明确并理解dp数组及下标的含义 第二步,分析明确并理解递推公式 第三步,理解dp数组如何初始化 第四步,理解遍历顺序 代码 题目描述 这道题和第718题的区别就是,本题求的是最长公共子序列的长…...
Unity C\# 实战:从零开始为游戏添加背景音乐与音效 (AudioSource/AudioClip/AudioMixer 详解)
Langchain系列文章目录 01-玩转LangChain:从模型调用到Prompt模板与输出解析的完整指南 02-玩转 LangChain Memory 模块:四种记忆类型详解及应用场景全覆盖 03-全面掌握 LangChain:从核心链条构建到动态任务分配的实战指南 04-玩转 LangChai…...
【代码解读】开源模型 minimind之pretrain
minimind原模型地址: https://github.com/jingyaogong/minimind 本文解读下开源模型minimind的预训练代码 train_pretrain.py,解释以代码注释的形式添加 1. 参数配置代码 parser argparse.ArgumentParser(description"MiniMind Pretraining") parser.ad…...
wordpress独立站的产品详情页添加WhatsApp链接按钮
在WordPress外贸独立站的产品展示页添加WhatsApp链接按钮,可以帮助客户更方便地与你联系。以下是实现这一功能的步骤: 方法一:使用HTML代码添加按钮 编辑产品展示页 进入WordPress后台,找到需要添加WhatsApp按钮的产品展示页。…...
从入门到精通汇编语言 第五章(流程转移与子程序)
参考教程:通俗易懂的汇编语言(王爽老师的书)_哔哩哔哩_bilibili 一、“转移”概述 1、转移的概念 (1)般情况下指令是顺序地逐条执行的,而在实际中,常需要改变程序的执行流程,这就…...
Redis下载
目录 安装包 1、使用.msi方式安装 2.使用zip方式安装【推荐方式】 添加环境变量 配置后台运行 启动: 1.startup.cmd的文件 2.cmd窗口运行 3.linux源码安装 (1)准备安装环境 (2)上传安装文件 (3&…...
硬件工程师笔记——电子器件汇总大全
目录 1、电阻 工作原理 欧姆定律 电阻的物理本质 一、限制电流 二、分压作用 三、消耗电能(将电能转化为热能) 2、压敏电阻 伏安特性 1. 过压保护 2. 电压调节 3. 浪涌吸收 4. 消噪与消火花 5. 高频应用 3、电容 工作原理 (…...
第一章,HCIA复习
抽象语言---->电信号抽象语言---编码 编码------二进制 二进制----电信号 OSI参考模型 TCP/IP模型(4参考5对等) 应用层:程序的编译过程;人机交互的接口。 表示层:数据格式化--->二进制 会话层:维护网…...
在 Debian 12 中恢复被删除的 smb.conf 配置文件
https://forum.ubuntu.com.cn/viewtopic.php?t494763 本文结合ai输出,内容中可能有些错误,但确实解决了我的问题,我采取保留完整输出的方式摘录。 在 Debian 12 中恢复被删除的 smb.conf 配置文件,需结合 dpkg 和 ucf(…...
Java开发软件
Main.java // 主类,用于测试学生管理系统 public class Main { public static void main(String[] args) { StudentManagementSystem sms new StudentManagementSystem(); // 添加学生 sms.addStudent(new Student(1, "Alice", 20)…...
SSRF学习
靶场 fofa搜:“重庆橙子科技”,里面找SSRF。 SSRF基础知识 绕过127限制 要查看127.0.0.1/flag.php,但是127被过滤。 绕过方法:使用不同的进制表示127.0.0.1即可。 二进制:01111111.00000000.00000000.00000001 八…...
使用virtualbox的HostOnly建立共享网络-实现虚拟机上网
目录 环境描述解决方案具体步骤1.新建一个virtual host-only ethernet adapter2.设置windows的wifi信号网络共享3.确认winows宿主网络信息3.1.wifi适配器的信息3.2.虚拟网卡的信息3.3.确认virtualbox中虚拟网卡的ip地址 4.虚拟机网卡设置5.虚拟机网络设置5.1.本地连接设置5.2.u…...
RNN的理解
对于RNN的理解 import torch import torch.nn as nn import torch.nn.functional as F# 手动实现一个简单的RNN class RNN(nn.Module):def __init__(self, input_size, hidden_size, output_size):super(RNN, self).__init__()# 定义权重矩阵和偏置项self.hidden_size hidden…...
Transformers是一种基于自注意力机制的神经网络模型
概述与发展历程 背景介绍 Transformers是一种基于自注意力机制的神经网络模型,最早由Google团队在2017年的论文《Attention Is All You Need》中提出。该模型旨在解决传统循环神经网络(RNNs)在处理长距离依赖关系时的低效性问题,…...
leetcode0078. 子集-medium
1 题目:子集 官方标定难度:中 给你一个整数数组 nums ,数组中的元素 互不相同 。返回该数组所有可能的子集(幂集)。 解集 不能 包含重复的子集。你可以按 任意顺序 返回解集。 示例 1: 输入࿱…...
C++编程 希尔排序
步骤: 1.先选定一个小于N的整数gap作为第一增量,然后将所有距离为gap的元素分在同一组,并对每一组的元素进行直接插入排序。然后再取一个比第一增量小的整数作为第二增量,重复上述操作… 2.当增量的大小减到1时,就相当…...
网络操作系统与应用服务器
1.通过PTR实现IP地址到主机域名的映射 2.在windows中,可以使用事件查看器来游览日志文件 3.IMAP即交互式邮件存取协议,邮件客户端可以使用其同步服务器和客户端之间的邮件列表 4.DHCP Discover ->DHCP Offer->DHCP Request->DHCP Ack 5.在DNS的资源记录中,类型A表…...
不确定与非单调推理的模糊推理
模糊推理是利用模糊性知识进行的一种不确定性推理。 模糊推理与前面讨论的不确定性推理的概率方法、可信度方法、D-S理论有着实质性的区别。前面那几种不确定性推理的理论基础是概率论,它所研究的事件本身有明确而确定的含义,只是由于发生的条件不充分,使得在条件与事件之间…...