Python05 数据序列-列表
Python05 数据序列-列表
5.1 列表概述
python列表是一种有序且可变的序列,列表使用中括号[]进行定义,各项元素之间使用逗号分隔。python的列表与其他编程语言中的数组很像,但独特之处在于python可以存储任意类型的数据。
使用场景:
需要存放1000个学生的学号,安装之前的方式,我们需要定义1000个变量存储,非常麻烦,那么我们可以使用数组进行存储。
5.2 列表的定义与使用
格式:
列表名 = [数据1,数据2,数据3......]
- 使用中括号[]进行定义,各项元素之间使用英文逗号分隔。
- 列表可以一次性存储多个数据,且可以为不同数据类型。
使用:直接通过 变量名 进行 使用
案例:
ids = [1, 2, 3, 4, 5]
print(ids) # [1, 2, 3, 4, 5]
print(ids[2]) # 3
图解:
5.3 列表的常用操作
列表的常见操作:增、删、改、查
表1 列表的常见操作
常见操作 | 说明 |
---|---|
len(s) | 计算序列s的长度(元素个数) |
min(s) | 返回序列s中的最小元素 |
max(s) | 返回序列s中的最大元素 |
list.append() | 在列表list的末尾添加元素x |
list.extend() | 在列表list中添加列表lx的元素,与+=功能相同 |
list.insert() | 在列表list索引为i的元素之前插入元素x |
listpop() | 取出并删除列表list中索引为i的元素x |
List.remove() | 删除列表list中第一次出现的元素x |
list.reverse() | 将列表list的元素反转 |
list.clear() | 删除列表list中的所有元素 |
list.copy() | 生成新列表,并拷贝列表list中的所有元素 |
list.sort() | 将列表list中的元素排序 |
5.3.1 查找
5.3.1.1 下标查找
ids = [1, 2, 3, 4, 5]
print(ids) # [1, 2, 3, 4, 5]
print(ids[2]) # 3
print(ids[0]) # 1
print(ids[1]) # 2
5.3.1.2 函数查找
- index():查找指定数据所在位置下标
格式:
列表.index(数据,开始位置,结束位置)
如果存在多个数据,那么返回是相匹配的第一个数据下标
idnex(数据):如果不知道位置,默认整个列表中查找
案例:
ids = [1, 2, 3, 4, 5]
print(ids.index(4)) # 3
print(ids.index(4, 1, 5)) # 3
print(ids.index(4, 4, 5)) # ValueError: 4 is not in list
print(ids.index(49)) # ValueError: 49 is not in list
注意:如果查找的数据不存在则报错。
- count():统计指定数据在列表中出现的次数
格式:
列表.count(数据)
案例:
ids = [1, 2, 3, 4, 5]
print(ids.count(4)) # 1
print(ids.count(9)) # 0
注意:如果数据不存在也不会报错
- len():获取列表的长度(列表中数据的个数)
格式:
len(列表)
案例:
ids = [1, 2, 3, 4, 5]
print(len(ids) ) # 5
5.3.1.3 判断查找
- in : 判断数据是否列表序列中,如果在返回True,否则返回False
格式:
数据 in 列表
案例:
ids = [1, 2, 3, 4, 5]
print(1 in ids ) # True
print(123 in ids ) # False
- not in : 判断数据是否列表序列中,如果在返回False,否则返回True
格式:
数据 not in 列表
案例:
ids = [1, 2, 3, 4, 5]
print(1 not in ids ) # False
print(123 not in ids ) # True
5.3.2 增加
增加指定的数据到列表中
- append():在列表的结尾追加数据
格式:
列表.append(数据)
案例:
ids = [1, 2, 3, 4, 5]
ids.append(89)
print(ids) # [1, 2, 3, 4, 5, 89]
注意:
如果append()追加的数据是一个序列,则追加整个序列到列表
ids = [1, 2, 3, 4, 5]
nams=["张三","李四"]
ids.append(nams)
print(ids) # [1, 2, 3, 4, 5, ['张三', '李四']]
- extend():列表结尾追加数据,如果数据是一个序列,则将这个序列的数据逐一添加到列表。
格式:
列表.extend(数据)
案例:
ids = [1, 2, 3, 4, 5]
ids.extend("4")
ids.extend("9")
nams = ["张三", "李四"]
ids.extend(nams)
print(ids) # [1, 2, 3, 4, 5, '4', '9', '张三', '李四']
- insert():在指定位置插入数据。
格式:
列表.insert(位置下标,数据)
案例:
ids = [1, 2, 3, 4, 5]
ids.insert(3, "in")
print(ids) # [1, 2, 3, 'in', 4, 5]
5.3.3 删除
- del : 删除列表 | 指定下标数据
格式:
del 列表 | 列表[下标]
案例:
# 删除指定数据
ids = [1, 2, 3, 4, 5]
del ids[2]
print(ids) # [1, 2, 4, 5]
# 删除整个列表
del ids
print(ids) # NameError: name 'ids' is not defined
del 删除时不指定下标,会删除整个列表,并释放内存空间
- pop():删除指定下标的数据(默认为最后一个),并返回该数据。
格式:
列表.pop(下标)
案例:
ids = [1, 2, 3, 4, 5]
# 删除指定下标数据
print(ids.pop(2)) # 3
print(ids) # [1, 2, 4, 5]
# 不指定下标,默认删除最后一个
print(ids.pop()) # 5
print(ids)
- remove():删除列表中指定数据的第一个匹配项。
格式:
列表.remove(数据)
案例:
ids = [1, 2, 3, 4, 5]
ids.remove(1)
ids.remove(10)# ValueError: list.remove(x): x not in list
print(ids)
如果删除的数据不存在,就会报错
ValueError: list.remove(x): x not in list
- clear():清空列表
格式:
列表.clear()
案例:
ids = [1, 2, 3, 4, 5]
ids.clear()
print(ids) # []
5.3.4 修改
- 通过下标修改
格式:
列表[下标] = 数据
案例:
ids = [1, 2, 3, 4, 5]
ids[0] = 99
print(ids) # [99, 2, 3, 4, 5]
- reverse():倒叙反转
格式:
列表.reverse()
案例:
ids = [1, 2, 3, 4, 5]
ids.reverse()
print(ids) # [5, 4, 3, 2, 1]
- sort():排序
格式:
列表.sort(key=None,reverse=True | False )
reverse=True : 倒序(降序) ,reverse=False:正序(升序,默认)
案例:
ids = [6, 0, 1, 99, 3, 4, 5]
ids.sort()
print(ids) # [0, 1, 3, 4, 5, 6, 99]
ids.sort(reverse=True)
print(ids) # [99, 6, 5, 4, 3, 1, 0]
ids.sort(reverse=False)
print(ids) # [0, 1, 3, 4, 5, 6, 99]
5.3.5 复制
- copy():复制
格式:
列表.copy()
案例:
ids = [1, 2, 3, 4, 5]
new_ids = ids.copy()
print(new_ids) # [1, 2, 3, 4, 5]
5.4 列表遍历
去获取或者打印列表中的每一个数据
- for 遍历
案例:
ids = [1, 2, 3, 4, 5]
for i in ids:print(i)
- while 遍历
ids = [1, 2, 3, 4, 5]
i = 0 # i:下标
while i <= len(ids) - 1:print(ids[i])i += 1
5.5 列表嵌套(多维列表)
列表嵌套相当于其他语言中的多维数据
比如:定义一个年级,年级中有三个班级
案例:
# nj21 = [["张三", "李四", "王二"],["小明", "迪迦"],["彦祖", "冠希", "你"]]
nj21 = []
bj01 = ["张三", "李四", "王二"]
bj02 = ["小明", "迪迦"]
bj03 = ["彦祖", "冠希", "你"]
# 将 班级 放入 年级中
nj21.append(bj01)
nj21.append(bj02)
nj21.append(bj03)
# print(nj21)
# 有一天,有一个塞亚他要插班,要将座位放在迪迦的前面
flag = False # 定义标志,表示插班成功
for bj in nj21: # 遍历年级for bj_stu in bj:if bj_stu == "迪迦":dj_index = bj.index(bj_stu)print("迪迦的下标:", dj_index)bj.insert(dj_index, "塞亚")print("塞亚插班成功!正在退出循环")# 插班成功,将标志改成 Trueflag = Truebreak # 停止的 内层循环,思考?当插入之后停止所有!print(bj)# 判断标志,是否插班成功,如果成功,就退出if flag == True:print("退出成功!")break
print("插入的年级信息:", nj21)
5.6 练习
好友信息管理(姓名,性别,联系)
功能:查看所有好友信息修改指定好友信息删除指定好友增加好友清空好友列表退出
user = "root"
pwd = "root"
friends = [["张三", "男", 135897],["李四", "男", 135897],["李四", "男"]
] # 存储好友while True:in_user = input("请输入用户名:")in_pwd = input("请输入密码:")# 比较用户名和密码是否一致if user == in_user and pwd == in_pwd:while True:# 登录成功,显示功能面板print(10 * "=" + "欢迎使用好友管理系统" + 10 * "=")print("""1:查看所有好友信息2:增加好友3:删除指定好友4:修改指定好友信息5:清空好友列表0:退出系统""")# 让用户选择想要进行的功能x = input("请输入想要进行的操作:")if x == "1":# 查看所有好友信息# 判断好友列表是否存在信息if len(friends) == 0:print("你现在并没有好朋友!请选择其他操作!")else:# 存在好友print("姓名\t\t性别\t\t电话")for i in friends:for j in i:print(j, end="\t\t")print()elif x == "2":# 增加好友name = input("请输入姓名:")sex = input("请输入性别:")tel = input("请输入电话号码:")list = [name, sex, tel]# 判断 list 信息是否已经在 friends列表中存在if list not in friends:friends.append(list)print(f"{name} 信息增加成功!")else:print("好友已经存在,不需要重复增加!")elif x == "3":# 删除指定好友del_name = input("请输入需要删除的好友姓名:")del_flag = False # 定义标志,表示删除好友成功for friend in friends:if del_name in friend:friends.remove(friend) # friends.remove(["张三", "男", 135897])print(f"好友:{del_name} 信息删除成功!")del_flag = Truebreak# 判断 del_flag 是否为 True,为 Fasle 表示好友不存在,没有删除if del_flag == False:print(f"删除失败!好友:{del_name} 不存在!")elif x == "4":# 修改指定好友信息up_name = input("请输入需要修改信息的好友姓名:")up_flag = False # 定义标志,表示好友不存在,提示信息for friend in friends:if up_name in friend: # friend=["张三", "男", 135897]# 开始修改new_name = input("新的姓名:")new_sex = input("新的性别:")new_tel = input("新的电话:")# 先找到 friend 在 friends列表中的下标index = friends.index(friend)friends[index] = [new_name, new_sex, new_tel]print("信息修改成功!")# 修改成功之后,将up_flag 改为 True ,修改成功up_flag = Truebreak# 判断 up_flag ,用于判断修改是否成功if up_flag == False:print(f"修改失败!好友:{up_name} 不存在!")elif x == "5":# 清空好友列表while True:sure = input("您确定需要清空所有好友吗?(y/n)")if sure == "y":friends.clear()print("好友列表清空成功!")breakelif sure == "n":print("ok!不清空好友列表!")breakelse:print("您的输入有误!请重新输入!")elif x == "0":print("欢迎下次使用!彦祖")exit(0)else:print("您输入有误!")else:print("用户名或密码错误!请重新输入!")
相关文章
- 微信小程序-微信小程序登录流程(一)
微信小程序,小程序的一种,英文名Wechat Mini Program,是一种不需要下载安装即可使用的应用,它实现了应用“触手可及”的梦想,用户扫一扫或搜一下即可打开应用 冷启动: 小程序首次打开或销毁后再次被打开&…...
2023/3/28 15:43:29 - C++初级教程(三)
一、C的一维数组 C 支持数组数据结构,它可以存储一个固定大小的相同类型元素的顺序集合。数组是用来存储一系列数据,但它往往被认为是一系列相同类型的变量。 数组的声明并不是声明一个个单独的变量,而是声明一个数组变量,比如 …...
2023/3/28 15:42:13 - Github上得分最高的20个项目
freeCodeCamp:一个流行的编程教育平台,目标是让任何人都能够免费学习编程。 Vscode:一个流行的跨平台文本编辑器,支持各种语言和框架,可通过扩展进行自定义。 React:一个流行的 JavaScript 库,…...
2023/3/28 15:41:28 - 【java缓存、redis缓存、guava缓存】java中实现缓存的几种方式
一、通过HashMap实现缓存 这种方式可以简单实现本地缓存,但是实际开发中不推荐使用,下面我们来实现一下这种方式。 首先创建一个管理缓存的类 public class LocalCache {public static HashMap<String,String> cache new HashMap<>();sta…...
2023/3/28 15:37:22 - 从应用火到股市 AIGC概念股连涨仨月
AI有变革生产力之势,证券市场闻风而动。同花顺数据显示,AIGC概念指数年内上涨近60%,涨幅是上证指数的10倍多。 具体到个股,软通动力、远大智能等搭上AI风口的企业服务商“老树发新芽”,直接涨停。游戏板块霸榜产品回报…...
2023/3/28 15:37:03 - linux突破git clone下载限制
前言 本人要在linux下载一个2.5G的文件,但只有20kb/s,实在忍受不了,最终利用工具实现了800kb/s的速度,除了利用工具的方法,本人都尝试了,但是几乎没有效果,我也会罗列出来,可自行尝试…...
2023/3/28 15:36:50 - x86架构利用docker去编译arm64的应用程序
文章目录1. 交叉编译:toolchain2. 隔离挂载的方式:3. QEMU 或其他模拟器来实际运行dockerx86架构实现多平台系统代码的编译,实现方式有多种:交叉编译:toolchain 【新的第三方库不好处理】隔离挂载的方式 【速度慢&…...
2023/3/28 15:33:40 - Apache Camel
目录儿一、简介二、核心总结一、简介 Camel is an Open Source integration framework that empowers you to quickly and easily integrate various systems consuming or producing data. Camel 是一个开源的集成框架,能够让开发者快速、轻松地整合/集成不同的应…...
2023/3/28 15:33:26 - Java学习记录
阅读前请看一下:我是一个热衷于记录的人,每次写博客会反复研读,尽量不断提升博客质量。文章设置为仅粉丝可见,是因为写博客确实花了不少精力。希望互相进步谢谢!! 文章目录阅读前请看一下:我是一…...
2023/3/28 15:32:34 - 「数据架构」TOGAF建模之数据架构:数据迁移图
数据迁移图的目的是显示从源应用程序到目标应用程序的数据流。该图将提供源/目标分布的可视化表示,并作为数据审核和建立可追溯性的工具。该图可以根据需要进行细化或增强。例如,该图可以只包含迁移环境的总体布局,也可以包含单个应用程序元数…...
2023/3/28 15:29:54 - MySQL数据库之——高级[进阶]SQL语句(一)SQL高级语句、函数等
文章目录一、SQL高级语句1、 SELECT2、DISTINCT3、WHER条件查询4 、AND OR5、IN6、BETWEEN7、通配符8、LIKE9、ORDER BY二、SQL函数1、数学函数:2、聚合函数:3、字符串函数:4、GROUP BY5、HAVING6、别名7、连接查询8、子查询9、EXISTS一、SQL…...
2023/3/28 15:24:30 - Java实现一个简单的东南西北中的面板
目录 一、前言 二、代码部分 1.代码 三、程序运行结果(面板弹出) 四、涉及到的知识点代码 一、前言 1.本代码是我在上学时写的,有一些地方没能完美实现,请包涵也请多赐教! 2.本弹窗界面可以根据简单的要求进行…...
2023/3/28 15:24:15 - 阿里十年资深程序员吐血总结之Java代理模式
阿里十年资深程序员吐血总结之Java代理模式 文章目录阿里十年资深程序员吐血总结之Java代理模式1.接口代理2.类代理3.动态代理都是通过反射实现的吗4.jdk动态代理和cglib动态代理的区别Java代理模式是怎么实现的 Java 代理模式是一种常见的设计模式,它可以在不改变…...
2023/3/28 15:23:34 - ServletAPI详解(一)
目录 1.Tomcat简介 2.Servlet 是什么? 3.编写Servlet 程序步骤 1.创建一个Maven项目 2.引入依赖 3.创建目录 4.编写代码 5.打包程序 6.部署程序 7.验证程序 4.使用SmartTomcat插件部署 1.Tomcat简介 Tomcat是一个开源的,基于java实现的被广泛使用的web服务器.web服…...
2023/3/28 15:22:50 - 全球第三机械制造商徐工集团表示与 Conflux、Zen Spark Technology 建立合作伙伴关系公司
【ConfluxNews】2023.3.28 ----------------------------- 1.【网络状态】当前版本V2.2.2,全网算力≈10T,昨日交易次数58K,昨日新增账户0.69K,昨日新增合约13个; 2.【POS参数】总锁仓244(-3)&a…...
2023/3/28 15:20:26 - 为什么所谓的“自律”一定要跟坚持挂钩呢?懂一点“行为设计学”,升级对“意义”的认知
为什么所谓的“自律”一定要跟坚持挂钩呢?懂一点“行为设计学”,升级对“意义”的认知00 导读01 懂一点“行为设计学”02 升级你对“意义”的认知03 小结00 导读 世界上最成功的人之一,风险投资家雷达利欧(Ray Dalio)…...
2023/3/28 15:19:52 - 中国各省份研究随笔
一.陕西 1.陕北榆林 黄土荒原,萧瑟荒凉,生活艰难,亩产60斤小麦。2002年开始榆林富裕,因为煤炭资源,易开采、质量好 2002年之前煤炭没有人开采,因为价格只有14元一吨,2001年加入WTO࿰…...
2023/3/28 15:19:31 - 配置JRebel热部署
1:此对应设置的是IntelliJ IDEA 2022.1.3 (Ultimate Edition)的热部署设置 2:激活插件失败,提示【LS client not configued】原因是版本过高,解决办法:手动下载jRebel,官网去找到过去版本的jRebel,地址&am…...
2023/3/28 15:16:22 - OpenGL | 渲染带透明通道的2D精灵
一、Alpha测试 Alpha 测试的基本原理为:当绘制一个片元时,首先检测其 Alpha 值,若 Alpha 值满足要求,就通过测试,绘制此片元;否则丢弃此片元,不进行绘制。 glEnable(GL_ALPHA_TEST);…...
2023/3/28 15:15:20 - PCIE中断发送与接收
1. EndPoint模式下中断的发送 在EP模式下,PCIE会根据配置信息只产生MSI或者INTA中断中的一种,然后传送到RC端。 1.1 INTA中断的发送 INTA中断以带内消息(Assert_INTA/Deassert_INTA)的形式传递中断,其作用相当于传统PCI总线中使用边带中断…...
2023/3/28 15:15:04 - SQL Server底层架构技术对比
背景 数据库是信息化的基石,支撑着整个业务系统,发挥着非常重要的作用,被喻为“IT的心脏”。因此,让数据库安全、稳定、高效地运行已经成为IT管理者必须要面对的问题。数据库在底层架构层面需要满足以下几点建设要求: …...
2023/3/28 15:14:36 - 你真的了解变量吗?
变量是编程语言中最基本的术语,用来代指计算机中存放的可变数据——如整数、小数、字符或被调用的一片内存空间。 变量可以保存不同的变量类型,比如整型、布尔型、对象、数组等等,每一个变量在内存中对应着一个内存地址,但是如果…...
2023/3/28 15:13:20 - 一文彻底搞懂为什么OpenCV用GPU/cuda跑得比用CPU慢?
一、原因总结 最近项目需要,发现了这个问题。网上找原因,汇总起来,有以下几点原因: 1、首先对于任何一个CUDA程序,在调用它的第一个CUDA API时后都要花费秒级的时间去初始化运行环境,后续还要分配显存&am…...
2023/3/28 15:11:34 - 数仓必备概念
目录 数据仓库 三范式建模 维度建模 数据仓库 是一个面向主题的(Subject)、集成的(Integrated)、非易失(Non-Volatile)、时变性(Time Variant)的数据集合,用于支持管理…...
2023/3/28 15:09:12 - Spring Security 6.0系列【5】源码篇之认证组件
有道无术,术尚可求,有术无道,止于术。 本系列Spring Boot 版本 3.0.4 本系列Spring Security 版本 6.0.2 源码地址:https://gitee.com/pearl-organization/study-spring-security-demo 文章目录 前言认证机制认证组件SecurityContextHolderSecurityContextAuthentication…...
2023/3/28 15:08:48 - webpack 配置介绍
一、webpack webpack 仅是一个打包工具,不会处理打包过程的东西例如 es6等新特性,如果需要处理这些新特性需要配置单独的加载bebblle-loader 等。 "devDependencies": {"webpack": "^5.76.3", // 打包工具"…...
2023/3/28 15:06:40 - ResNet 基于迁移学习对CIFAR10 数据集的分类
目录 1. resnet 网络 2. 迁移学习-train 2.1 下载预训练权重 2.2 训练过程 2.3 训练损失正确率 2.4 代码 3. resnet 在 CIFAR10 的预测 完整文件下载地址:resnet 基于迁移学习对 CIFAR10 数据集的分类 1. resnet 网络 Resnet 网络的搭建: …...
2023/3/28 15:06:00 - 【Django】基于JWT的token认证
Json Web Token(JWT)这种结构化令牌的基础上实现了一套基于用户体系对用户的API进行授权访问的机制,满足用户个性化安全设置的需求。 文章目录一、基于token的认证1.1 简介1.2 流程描述1.3 JWT1.3.1 简介1.3.2 JWT的构成1.3.3 授权范围与时效…...
2023/3/28 15:05:21 - 零售数据分析之操作篇9:用历史聚合计算历史销售SKU数
各位数据的朋友,大家好,我是老周道数据,和你一起,用常人思维数据分析,通过数据讲故事。 上期内容回顾与作业讲解 上一讲讲了如何通过历史聚合来计算库存,这个方案非常好的解决了零售企业在计算任意时间库…...
2023/3/28 15:01:58 - amd_kernel_code_t Struct Reference——AMD gpu shader kernel 代码数据结构
LLVM: amd_kernel_code_t Struct Reference uint16_twavefront_sgpr_countNumber of scalar registers used by a wavefront.uint16_tworkitem_vgpr_countNumber of vector registers used by each work-item.workitem_vgpr_count: 每个工作线程需要使用的 向量寄存器的个数; …...
2023/3/28 14:59:19
最新文章
- 微信小程序-微信小程序登录流程(一)
微信小程序,小程序的一种,英文名Wechat Mini Program,是一种不需要下载安装即可使用的应用,它实现了应用“触手可及”的梦想,用户扫一扫或搜一下即可打开应用 冷启动: 小程序首次打开或销毁后再次被打开&…...
2023/3/28 15:43:29 - C++初级教程(三)
一、C的一维数组 C 支持数组数据结构,它可以存储一个固定大小的相同类型元素的顺序集合。数组是用来存储一系列数据,但它往往被认为是一系列相同类型的变量。 数组的声明并不是声明一个个单独的变量,而是声明一个数组变量,比如 …...
2023/3/28 15:42:13 - Github上得分最高的20个项目
freeCodeCamp:一个流行的编程教育平台,目标是让任何人都能够免费学习编程。 Vscode:一个流行的跨平台文本编辑器,支持各种语言和框架,可通过扩展进行自定义。 React:一个流行的 JavaScript 库,…...
2023/3/28 15:41:28 - 【java缓存、redis缓存、guava缓存】java中实现缓存的几种方式
一、通过HashMap实现缓存 这种方式可以简单实现本地缓存,但是实际开发中不推荐使用,下面我们来实现一下这种方式。 首先创建一个管理缓存的类 public class LocalCache {public static HashMap<String,String> cache new HashMap<>();sta…...
2023/3/28 15:37:22 - 从应用火到股市 AIGC概念股连涨仨月
AI有变革生产力之势,证券市场闻风而动。同花顺数据显示,AIGC概念指数年内上涨近60%,涨幅是上证指数的10倍多。 具体到个股,软通动力、远大智能等搭上AI风口的企业服务商“老树发新芽”,直接涨停。游戏板块霸榜产品回报…...
2023/3/28 15:37:03 - linux突破git clone下载限制
前言 本人要在linux下载一个2.5G的文件,但只有20kb/s,实在忍受不了,最终利用工具实现了800kb/s的速度,除了利用工具的方法,本人都尝试了,但是几乎没有效果,我也会罗列出来,可自行尝试…...
2023/3/28 15:36:50 - x86架构利用docker去编译arm64的应用程序
文章目录1. 交叉编译:toolchain2. 隔离挂载的方式:3. QEMU 或其他模拟器来实际运行dockerx86架构实现多平台系统代码的编译,实现方式有多种:交叉编译:toolchain 【新的第三方库不好处理】隔离挂载的方式 【速度慢&…...
2023/3/28 15:33:40 - Apache Camel
目录儿一、简介二、核心总结一、简介 Camel is an Open Source integration framework that empowers you to quickly and easily integrate various systems consuming or producing data. Camel 是一个开源的集成框架,能够让开发者快速、轻松地整合/集成不同的应…...
2023/3/28 15:33:26 - Java学习记录
阅读前请看一下:我是一个热衷于记录的人,每次写博客会反复研读,尽量不断提升博客质量。文章设置为仅粉丝可见,是因为写博客确实花了不少精力。希望互相进步谢谢!! 文章目录阅读前请看一下:我是一…...
2023/3/28 15:32:34 - 「数据架构」TOGAF建模之数据架构:数据迁移图
数据迁移图的目的是显示从源应用程序到目标应用程序的数据流。该图将提供源/目标分布的可视化表示,并作为数据审核和建立可追溯性的工具。该图可以根据需要进行细化或增强。例如,该图可以只包含迁移环境的总体布局,也可以包含单个应用程序元数…...
2023/3/28 15:29:54 - MySQL数据库之——高级[进阶]SQL语句(一)SQL高级语句、函数等
文章目录一、SQL高级语句1、 SELECT2、DISTINCT3、WHER条件查询4 、AND OR5、IN6、BETWEEN7、通配符8、LIKE9、ORDER BY二、SQL函数1、数学函数:2、聚合函数:3、字符串函数:4、GROUP BY5、HAVING6、别名7、连接查询8、子查询9、EXISTS一、SQL…...
2023/3/28 15:24:30 - Java实现一个简单的东南西北中的面板
目录 一、前言 二、代码部分 1.代码 三、程序运行结果(面板弹出) 四、涉及到的知识点代码 一、前言 1.本代码是我在上学时写的,有一些地方没能完美实现,请包涵也请多赐教! 2.本弹窗界面可以根据简单的要求进行…...
2023/3/28 15:24:15 - 阿里十年资深程序员吐血总结之Java代理模式
阿里十年资深程序员吐血总结之Java代理模式 文章目录阿里十年资深程序员吐血总结之Java代理模式1.接口代理2.类代理3.动态代理都是通过反射实现的吗4.jdk动态代理和cglib动态代理的区别Java代理模式是怎么实现的 Java 代理模式是一种常见的设计模式,它可以在不改变…...
2023/3/28 15:23:34 - ServletAPI详解(一)
目录 1.Tomcat简介 2.Servlet 是什么? 3.编写Servlet 程序步骤 1.创建一个Maven项目 2.引入依赖 3.创建目录 4.编写代码 5.打包程序 6.部署程序 7.验证程序 4.使用SmartTomcat插件部署 1.Tomcat简介 Tomcat是一个开源的,基于java实现的被广泛使用的web服务器.web服…...
2023/3/28 15:22:50 - 全球第三机械制造商徐工集团表示与 Conflux、Zen Spark Technology 建立合作伙伴关系公司
【ConfluxNews】2023.3.28 ----------------------------- 1.【网络状态】当前版本V2.2.2,全网算力≈10T,昨日交易次数58K,昨日新增账户0.69K,昨日新增合约13个; 2.【POS参数】总锁仓244(-3)&a…...
2023/3/28 15:20:26 - 为什么所谓的“自律”一定要跟坚持挂钩呢?懂一点“行为设计学”,升级对“意义”的认知
为什么所谓的“自律”一定要跟坚持挂钩呢?懂一点“行为设计学”,升级对“意义”的认知00 导读01 懂一点“行为设计学”02 升级你对“意义”的认知03 小结00 导读 世界上最成功的人之一,风险投资家雷达利欧(Ray Dalio)…...
2023/3/28 15:19:52 - 中国各省份研究随笔
一.陕西 1.陕北榆林 黄土荒原,萧瑟荒凉,生活艰难,亩产60斤小麦。2002年开始榆林富裕,因为煤炭资源,易开采、质量好 2002年之前煤炭没有人开采,因为价格只有14元一吨,2001年加入WTO࿰…...
2023/3/28 15:19:31 - 配置JRebel热部署
1:此对应设置的是IntelliJ IDEA 2022.1.3 (Ultimate Edition)的热部署设置 2:激活插件失败,提示【LS client not configued】原因是版本过高,解决办法:手动下载jRebel,官网去找到过去版本的jRebel,地址&am…...
2023/3/28 15:16:22 - OpenGL | 渲染带透明通道的2D精灵
一、Alpha测试 Alpha 测试的基本原理为:当绘制一个片元时,首先检测其 Alpha 值,若 Alpha 值满足要求,就通过测试,绘制此片元;否则丢弃此片元,不进行绘制。 glEnable(GL_ALPHA_TEST);…...
2023/3/28 15:15:20 - PCIE中断发送与接收
1. EndPoint模式下中断的发送 在EP模式下,PCIE会根据配置信息只产生MSI或者INTA中断中的一种,然后传送到RC端。 1.1 INTA中断的发送 INTA中断以带内消息(Assert_INTA/Deassert_INTA)的形式传递中断,其作用相当于传统PCI总线中使用边带中断…...
2023/3/28 15:15:04 - SQL Server底层架构技术对比
背景 数据库是信息化的基石,支撑着整个业务系统,发挥着非常重要的作用,被喻为“IT的心脏”。因此,让数据库安全、稳定、高效地运行已经成为IT管理者必须要面对的问题。数据库在底层架构层面需要满足以下几点建设要求: …...
2023/3/28 15:14:36 - 你真的了解变量吗?
变量是编程语言中最基本的术语,用来代指计算机中存放的可变数据——如整数、小数、字符或被调用的一片内存空间。 变量可以保存不同的变量类型,比如整型、布尔型、对象、数组等等,每一个变量在内存中对应着一个内存地址,但是如果…...
2023/3/28 15:13:20 - 一文彻底搞懂为什么OpenCV用GPU/cuda跑得比用CPU慢?
一、原因总结 最近项目需要,发现了这个问题。网上找原因,汇总起来,有以下几点原因: 1、首先对于任何一个CUDA程序,在调用它的第一个CUDA API时后都要花费秒级的时间去初始化运行环境,后续还要分配显存&am…...
2023/3/28 15:11:34 - 数仓必备概念
目录 数据仓库 三范式建模 维度建模 数据仓库 是一个面向主题的(Subject)、集成的(Integrated)、非易失(Non-Volatile)、时变性(Time Variant)的数据集合,用于支持管理…...
2023/3/28 15:09:12 - Spring Security 6.0系列【5】源码篇之认证组件
有道无术,术尚可求,有术无道,止于术。 本系列Spring Boot 版本 3.0.4 本系列Spring Security 版本 6.0.2 源码地址:https://gitee.com/pearl-organization/study-spring-security-demo 文章目录 前言认证机制认证组件SecurityContextHolderSecurityContextAuthentication…...
2023/3/28 15:08:48 - webpack 配置介绍
一、webpack webpack 仅是一个打包工具,不会处理打包过程的东西例如 es6等新特性,如果需要处理这些新特性需要配置单独的加载bebblle-loader 等。 "devDependencies": {"webpack": "^5.76.3", // 打包工具"…...
2023/3/28 15:06:40 - ResNet 基于迁移学习对CIFAR10 数据集的分类
目录 1. resnet 网络 2. 迁移学习-train 2.1 下载预训练权重 2.2 训练过程 2.3 训练损失正确率 2.4 代码 3. resnet 在 CIFAR10 的预测 完整文件下载地址:resnet 基于迁移学习对 CIFAR10 数据集的分类 1. resnet 网络 Resnet 网络的搭建: …...
2023/3/28 15:06:00 - 【Django】基于JWT的token认证
Json Web Token(JWT)这种结构化令牌的基础上实现了一套基于用户体系对用户的API进行授权访问的机制,满足用户个性化安全设置的需求。 文章目录一、基于token的认证1.1 简介1.2 流程描述1.3 JWT1.3.1 简介1.3.2 JWT的构成1.3.3 授权范围与时效…...
2023/3/28 15:05:21 - 零售数据分析之操作篇9:用历史聚合计算历史销售SKU数
各位数据的朋友,大家好,我是老周道数据,和你一起,用常人思维数据分析,通过数据讲故事。 上期内容回顾与作业讲解 上一讲讲了如何通过历史聚合来计算库存,这个方案非常好的解决了零售企业在计算任意时间库…...
2023/3/28 15:01:58 - amd_kernel_code_t Struct Reference——AMD gpu shader kernel 代码数据结构
LLVM: amd_kernel_code_t Struct Reference uint16_twavefront_sgpr_countNumber of scalar registers used by a wavefront.uint16_tworkitem_vgpr_countNumber of vector registers used by each work-item.workitem_vgpr_count: 每个工作线程需要使用的 向量寄存器的个数; …...
2023/3/28 14:59:19