Python酷库之旅-第三方库Pandas(036)
目录
一、用法精讲
111、pandas.Series.item方法
111-1、语法
111-2、参数
111-3、功能
111-4、返回值
111-5、说明
111-6、用法
111-6-1、数据准备
111-6-2、代码示例
111-6-3、结果输出
112、pandas.Series.xs方法
112-1、语法
112-2、参数
112-3、功能
112-4、返回值
112-5、说明
112-6、用法
112-6-1、数据准备
112-6-2、代码示例
112-6-3、结果输出
113、pandas.Series.add方法
113-1、语法
113-2、参数
113-3、功能
113-4、返回值
113-5、说明
113-6、用法
113-6-1、数据准备
113-6-2、代码示例
113-6-3、结果输出
114、pandas.Series.sub方法
114-1、语法
114-2、参数
114-3、功能
114-4、返回值
114-5、说明
114-6、用法
114-6-1、数据准备
114-6-2、代码示例
114-6-3、结果输出
115、pandas.Series.mul方法
115-1、语法
115-2、参数
115-3、功能
115-4、返回值
115-5、说明
115-6、用法
115-6-1、数据准备
115-6-2、代码示例
115-6-3、结果输出
二、推荐阅读
1、Python筑基之旅
2、Python函数之旅
3、Python算法之旅
4、Python魔法之旅
5、博客个人主页
一、用法精讲
111、pandas.Series.item方法
111-1、语法
# 111、pandas.Series.item方法
pandas.Series.item()
Return the first element of the underlying data as a Python scalar.Returns:
scalar
The first element of Series or Index.Raises:
ValueError
If the data is not length = 1.
111-2、参数
无
111-3、功能
用于从pandas.Series对象中获取单一的元素值,并返回该值。
111-4、返回值
返回Series中唯一元素的值。
111-5、说明
在使用item方法之前,可以考虑检查Series的长度,以确保安全调用。
111-6、用法
111-6-1、数据准备
无
111-6-2、代码示例
# 111、pandas.Series.item方法
import pandas as pd
# 创建一个只有一个元素的Series对象
s = pd.Series([42])
# 使用item方法获取这个元素
if len(s) == 1:value = s.item()
else:print("Series does not contain exactly one element.")
print(value)
111-6-3、结果输出
# 111、pandas.Series.item方法
# 42
112、pandas.Series.xs方法
112-1、语法
# 112、pandas.Series.xs方法
pandas.Series.xs(key, axis=0, level=None, drop_level=True)
Return cross-section from the Series/DataFrame.This method takes a key argument to select data at a particular level of a MultiIndex.Parameters:
key
label or tuple of label
Label contained in the index, or partially in a MultiIndex.axis
{0 or ‘index’, 1 or ‘columns’}, default 0
Axis to retrieve cross-section on.level
object, defaults to first n levels (n=1 or len(key))
In case of a key partially contained in a MultiIndex, indicate which levels are used. Levels can be referred by label or position.drop_level
bool, default True
If False, returns object with same levels as self.Returns:
Series or DataFrame
Cross-section from the original Series or DataFrame corresponding to the selected index levels.
112-2、参数
112-2-1、key(必须):任意数据类型,通常为索引标签,表示要提取的索引标签值,如果Series有多层索引,则key可以是一个具体的层级标签(对于多层索引,需要指定level)。
112-2-2、axis(可选,默认值为0):一个整数或字符串,表示指定操作的轴。对于Series来说,axis总是 0,因为Series只有一个轴,表示索引轴;在多层索引的DataFrame中,这个参数允许指定不同的轴。
112-2-3、level(可选,默认值为None):一个整数或字符串,表示指定要在多层索引中提取的具体层级。如果Series没有多层索引,此参数被忽略。如果指定此参数,则key应为指定层级的标签值。例如,在多层索引的Series中,可以通过指定level来选择特定的层级。
112-2-4、drop_level(可选,默认值为True):布尔值,表示指定在提取值后是否从结果中删除所使用的层级。如果为True,提取的结果将不包含使用的索引层级;如果为False,结果将保留该层级的索引。
112-3、功能
用于从一个pandas.Series对象中选择特定的数据,该方法可以通过给定的索引标签来切片Series,并返回与该标签对应的值。
112-4、返回值
返回指定索引标签对应的单个值,或者如果key匹配多个值,则返回一个新的Series。
112-5、说明
112-5-1、如果指定的key不存在于索引中,会引发KeyError。
112-5-2、当使用level时,确保Series是多层索引的,否则指定level参数会导致错误。
112-5-3、drop_level的设置会影响结果的索引结构,True时会去掉提取的层级,False时保留。
112-6、用法
112-6-1、数据准备
无
112-6-2、代码示例
# 112、pandas.Series.xs方法
# 112-1、基本应用
import pandas as pd
s = pd.Series([10, 20, 30], index=['a', 'b', 'c'])
# 获取索引为'b'的值
value = s.xs('b')
print(value, end='\n\n')# 112-2、多层索引示例
import pandas as pd
# 创建多层索引的 Series
arrays = [['A', 'A', 'B', 'B'], [1, 2, 1, 2]]
index = pd.MultiIndex.from_arrays(arrays, names=('letters', 'numbers'))
s_multi = pd.Series([100, 200, 300, 400], index=index)
# 获取数字为1的所有值,保持原始层级
value = s_multi.xs(1, level='numbers', drop_level=False)
print(value, end='\n\n')
# 获取数字为1的所有值,删除层级
value = s_multi.xs(1, level='numbers', drop_level=True)
print(value)
112-6-3、结果输出
# 112、pandas.Series.xs方法
# 112-1、基本应用
# 20# 112-2、多层索引示例
# 获取数字为1的所有值,保持原始层级
# letters numbers
# A 1 100
# B 1 300
# dtype: int64# 获取数字为1的所有值,删除层级
# letters
# A 100
# B 300
# dtype: int64
113、pandas.Series.add方法
113-1、语法
# 113、pandas.Series.add方法
pandas.Series.add(other, level=None, fill_value=None, axis=0)
Return Addition of series and other, element-wise (binary operator add).Equivalent to series + other, but with support to substitute a fill_value for missing data in either one of the inputs.Parameters:
other
Series or scalar value
level
int or name
Broadcast across a level, matching Index values on the passed MultiIndex level.fill_value
None or float value, default None (NaN)
Fill existing missing (NaN) values, and any new element needed for successful Series alignment, with this value before computation. If data in both corresponding Series locations is missing the result of filling (at that location) will be missing.axis
{0 or ‘index’}
Unused. Parameter needed for compatibility with DataFrame.Returns:
Series
The result of the operation.
113-2、参数
113-2-1、other(必须):表示要与当前Series对象进行加法操作的对象。如果是Series或DataFrame,则将其与当前Series对象按元素逐一加法;如果是标量值,则该值会与Series中的每一个元素相加。
113-2-2、level(可选,默认值为None):一个整数或字符串,如果other是一个多层索引的Series或DataFrame,可以通过指定此参数来对齐相同的层级进行加法,level用于指明要对齐的层级标签。
113-2-3、fill_value(可选,默认值为None):标量值,当other中存在缺失值(NaN)时,用于填充缺失的值,即当other中某些索引标签在Series中不存在时,使用此值填补。
113-2-4、axis(可选,默认值为0):一个整数或字符串,表示指定沿哪个轴进行操作。对于Series,此参数通常被忽略,因为Series只有一个轴;对于DataFrame,则可以指定沿行或列进行操作。
113-3、功能
用于执行两个Series对象之间的逐元素加法操作。
113-4、返回值
返回一个新的Series对象,其中的每个元素是原Series和other对应位置元素的和。返回的Series的索引是Series与other的并集,如果other的索引中有当前Series中不存在的标签,这些标签对应的值会是填充值(如果设置了fill_value)或NaN(如果没有设置fill_value)。
113-5、说明
113-5-1、如果other的索引不完全匹配Series的索引,并且fill_value参数没有设置,缺失值会导致结果中的NaN。
113-5-2、使用fill_value可以处理缺失值,使加法操作更加鲁棒。
113-5-3、当涉及到多层索引时,确保level参数正确指定,以保证对齐的准确性。
113-6、用法
113-6-1、数据准备
无
113-6-2、代码示例
# 113、pandas.Series.add方法
# 113-1、基本用法
import pandas as pd
s1 = pd.Series([1, 2, 3], index=['a', 'b', 'c'])
s2 = pd.Series([4, 5, 6], index=['a', 'b', 'c'])
# 执行逐元素加法
result = s1.add(s2)
print(result, end='\n\n')# 113-2、使用标量值
import pandas as pd
s1 = pd.Series([1, 2, 3], index=['a', 'b', 'c'])
s2 = pd.Series([4, 5, 6], index=['a', 'b', 'c'])
# 使用标量值进行加法
result = s1.add(10)
print(result, end='\n\n')# 113-3、使用fill_value参数
import pandas as pd
s1 = pd.Series([1, 2, 3], index=['a', 'b', 'c'])
s2 = pd.Series([4, 5, 6], index=['a', 'b', 'c'])
s3 = pd.Series([7, 8], index=['a', 'd'])
result = s1.add(s3, fill_value=0)
print(result, end='\n\n')# 113-4、使用多层索引
import pandas as pd
# 创建多层索引的Series
arrays = [['A', 'A', 'B', 'B'], [1, 2, 1, 2]]
index = pd.MultiIndex.from_arrays(arrays, names=('letters', 'numbers'))
s_multi1 = pd.Series([10, 20, 30, 40], index=index)
s_multi2 = pd.Series([1, 2, 3, 4], index=index)
# 执行逐元素加法
result_multi = s_multi1.add(s_multi2)
print(result_multi)
113-6-3、结果输出
# 113、pandas.Series.add方法
# 113-1、基本用法
# a 5
# b 7
# c 9
# dtype: int64# 113-2、使用标量值
# a 11
# b 12
# c 13
# dtype: int64# 113-3、使用fill_value参数
# a 8.0
# b 2.0
# c 3.0
# d 8.0
# dtype: float64# 113-4、使用多层索引
# letters numbers
# A 1 11
# 2 22
# B 1 33
# 2 44
# dtype: int64
114、pandas.Series.sub方法
114-1、语法
# 114、pandas.Series.sub方法
pandas.Series.sub(other, level=None, fill_value=None, axis=0)
Return Subtraction of series and other, element-wise (binary operator sub).Equivalent to series - other, but with support to substitute a fill_value for missing data in either one of the inputs.Parameters:
other
Series or scalar value
level
int or name
Broadcast across a level, matching Index values on the passed MultiIndex level.fill_value
None or float value, default None (NaN)
Fill existing missing (NaN) values, and any new element needed for successful Series alignment, with this value before computation. If data in both corresponding Series locations is missing the result of filling (at that location) will be missing.axis
{0 or ‘index’}
Unused. Parameter needed for compatibility with DataFrame.Returns:
Series
The result of the operation.
114-2、参数
114-2-1、other(必须):被减数,可以是与当前Series对象相同长度的Series、DataFrame或一个标量值,如果是DataFrame,则会对每列执行相应的减法操作。
114-2-2、level(可选,默认值为None):一个整数或字符串,如果当前Series或other有多层索引(MultiIndex),level参数用于指定在哪一层索引上对齐,这样可以在指定层级上进行逐元素减法运算,而不是在所有层级上。
114-2-3、fill_value(可选,默认值为None):标量值,当other的某些索引值在当前Series中不存在时,使用fill_value来填补这些缺失值,这样,fill_value代替了缺失的数据参与计算。
114-2-4、axis(可选,默认值为0):这个参数主要在DataFrame上有效,用于指定操作的轴;在Series上,通常没有必要设置这个参数,因为Series只有一个轴(轴0)。
114-3、功能
用于对两个Series对象进行逐元素的减法操作。
114-4、返回值
返回一个新的Series对象,其中的每个元素是原Series和other对应位置元素的差。返回的Series的索引是Series与other的并集,如果other的索引中有当前Series中不存在的标签,这些标签对应的值会是填充值(如果设置了fill_value)或NaN(如果没有设置fill_value)。
114-5、说明
无
114-6、用法
114-6-1、数据准备
无
114-6-2、代码示例
# 114、pandas.Series.sub方法
# 114-1、基本用法
import pandas as pd
s1 = pd.Series([5, 6, 7], index=['a', 'b', 'c'])
s2 = pd.Series([1, 2, 3], index=['a', 'b', 'c'])
result = s1.sub(s2)
print(result, end='\n\n')# 114-2、使用level参数
import pandas as pd
arrays = [['A', 'A', 'B', 'B'], [1, 2, 1, 2]]
index = pd.MultiIndex.from_arrays(arrays, names=('letters', 'numbers'))
s1 = pd.Series([10, 20, 30, 40], index=index)
s2 = pd.Series([1, 2, 3, 4], index=index)
result = s1.sub(s2, level='letters')
print(result, end='\n\n')# 114-3、使用fill_value参数
import pandas as pd
s1 = pd.Series([5, 6], index=['a', 'b'])
s2 = pd.Series([1, 2, 3], index=['a', 'b', 'c'])
result = s1.sub(s2, fill_value=0)
print(result, end='\n\n')# 114-4、使用axis参数(主要适用于DataFrame)
import pandas as pd
df1 = pd.DataFrame({'A': [10, 20], 'B': [30, 40]})
df2 = pd.DataFrame({'A': [1, 2], 'B': [3, 4]})
result = df1.sub(df2, axis=0)
print(result)
114-6-3、结果输出
# 114、pandas.Series.sub方法
# 114-1、基本用法
# a 4
# b 4
# c 4
# dtype: int64# 114-2、使用level参数
# letters numbers
# A 1 9
# 2 18
# B 1 27
# 2 36
# dtype: int64# 114-3、使用fill_value参数
# a 4.0
# b 4.0
# c -3.0
# dtype: float64# 114-4、使用axis参数(主要适用于DataFrame)
# A B
# 0 9 27
# 1 18 36
115、pandas.Series.mul方法
115-1、语法
# 115、pandas.Series.mul方法
pandas.Series.mul(other, level=None, fill_value=None, axis=0)
Return Multiplication of series and other, element-wise (binary operator mul).Equivalent to series * other, but with support to substitute a fill_value for missing data in either one of the inputs.Parameters:
other
Series or scalar value
level
int or name
Broadcast across a level, matching Index values on the passed MultiIndex level.fill_value
None or float value, default None (NaN)
Fill existing missing (NaN) values, and any new element needed for successful Series alignment, with this value before computation. If data in both corresponding Series locations is missing the result of filling (at that location) will be missing.axis
{0 or ‘index’}
Unused. Parameter needed for compatibility with DataFrame.Returns:
Series
The result of the operation.
115-2、参数
115-2-1、other(必须):乘数,可以是与当前Series对象长度相同的Series、DataFrame或一个标量值。如果是DataFrame,会对每列进行逐元素的乘法操作。
115-2-2、level(可选,默认值为None):如果当前Series或other有多层索引(MultiIndex),level参数用于指定在哪一层索引上对齐,这样可以在指定层级上进行逐元素乘法运算,而不是在所有层级上。
115-2-3、fill_value(可选,默认值为None):当other的某些索引值在当前Series中不存在时,使用fill_value来填补这些缺失值,这样,fill_value代替了缺失的数据参与计算。
115-2-4、axis(可选,默认值为0):主要在DataFrame上有效,用于指定操作的轴;在Series上,通常没有必要设置这个参数,因为Series只有一个轴(轴0)。
115-3、功能
用于执行元素级的乘法操作。具体来说,它会将Series中的每个元素与另一个序列(Series或兼容的数组类型,如NumPy数组)中的对应元素相乘。如果不存在对应元素(比如两个Series的索引不完全匹配),则可以通过fill_value参数来指定一个填充值,以便进行乘法操作。
115-4、返回值
返回一个新的Series,其中包含原始Series和other参数指定的序列(或数组)之间元素级乘法的结果。如果两个输入序列的索引不完全匹配,并且指定了fill_value,则结果Series的索引将是两个输入序列索引的并集,缺失值将用fill_value替换以进行乘法操作。
115-5、说明
无
115-6、用法
115-6-1、数据准备
无
115-6-2、代码示例
# 115、pandas.Series.mul方法
# 115-1、基本用法
import pandas as pd
s1 = pd.Series([2, 3, 4], index=['a', 'b', 'c'])
s2 = pd.Series([5, 6, 7], index=['a', 'b', 'c'])
result = s1.mul(s2)
print(result, end='\n\n')# 115-2、使用level参数
import pandas as pd
arrays = [['A', 'A', 'B', 'B'], [1, 2, 1, 2]]
index = pd.MultiIndex.from_arrays(arrays, names=('letters', 'numbers'))
s1 = pd.Series([10, 20, 30, 40], index=index)
s2 = pd.Series([2, 3, 4, 5], index=index)
result = s1.mul(s2, level='letters')
print(result, end='\n\n')# 115-3、使用fill_value参数
import pandas as pd
s1 = pd.Series([1, 2], index=['a', 'b'])
s2 = pd.Series([10, 20, 30], index=['a', 'b', 'c'])
result = s1.mul(s2, fill_value=1)
print(result, end='\n\n')# 115-4、使用axis参数(主要适用于DataFrame)
import pandas as pd
df1 = pd.DataFrame({'A': [1, 2], 'B': [3, 4]})
df2 = pd.DataFrame({'A': [10, 20], 'B': [30, 40]})
result = df1.mul(df2, axis=0)
print(result)
115-6-3、结果输出
# 115、pandas.Series.mul方法
# 115-1、基本用法
# a 10
# b 18
# c 28
# dtype: int64# 115-2、使用level参数
# letters numbers
# A 1 20
# 2 60
# B 1 120
# 2 200
# dtype: int64# 115-3、使用fill_value参数
# a 10.0
# b 40.0
# c 30.0
# dtype: float64# 115-4、使用axis参数(主要适用于DataFrame)
# A B
# 0 10 90
# 1 40 160
二、推荐阅读
1、Python筑基之旅
2、Python函数之旅
3、Python算法之旅
4、Python魔法之旅
5、博客个人主页
相关文章:

Python酷库之旅-第三方库Pandas(036)
目录 一、用法精讲 111、pandas.Series.item方法 111-1、语法 111-2、参数 111-3、功能 111-4、返回值 111-5、说明 111-6、用法 111-6-1、数据准备 111-6-2、代码示例 111-6-3、结果输出 112、pandas.Series.xs方法 112-1、语法 112-2、参数 112-3、功能 112-…...

Python爬虫(2) --爬取网页页面
文章目录 爬虫URL发送请求UA伪装requests 获取想要的数据打开网页 总结完整代码 爬虫 Python 爬虫是一种自动化工具,用于从互联网上抓取网页数据并提取有用的信息。Python 因其简洁的语法和丰富的库支持(如 requests、BeautifulSoup、Scrapy 等…...

【iOS】——探究isKindOfClass和isMemberOfClass底层实现
isKindOfClass 判断该对象是否为传入的类或其子类的实例 // 类方法实现,用于检查一个类是否属于另一个类或其父类链上的任何类。(BOOL)isKindOfClass:(Class)cls {// 从当前类开始,tcls将沿着元类的继承链向上遍历。for (Class tcls self->ISA(); …...
Python 热门面试题(七)
Python中如何拷贝对象?浅拷贝和深拷贝的区别是什么? 在Python中,拷贝对象是一个常见的需求,尤其是当你需要修改一个对象但又不想影响原始对象时。Python提供了几种拷贝对象的方法,其中最重要的是浅拷贝(sh…...

STM32项目分享:智能宠物喂食系统
目录 一、前言 二、项目简介 1.功能详解 2.主要器件 三、原理图设计 四、PCB硬件设计 1.PCB图 五、程序设计 六、实验效果 七、资料内容 项目分享 一、前言 项目成品图片: 哔哩哔哩视频链接: https://www.bilibili.com/video/BV1zy411z7…...

数据结构——栈的实现(java实现)与相应的oj题
文章目录 一 栈栈的概念:栈的实现:栈的数组实现默认构造方法压栈获取栈元素的个数出栈获取栈顶元素判断当前栈是否为空 java提供的Stack类Stack实现的接口: LinkedList也可以当Stack使用虚拟机栈,栈帧,栈的三个概念 二 栈的一些算…...
linux修改时区为CST
目录 第一步: 第二步: 第三步: 第一步: 备份原来的时区信息 [rootlocalhost ~]# mv /etc/localtime localtime.bak 第二步: 通过软链接将亚洲/上海 的时区信息 指导时区信息 [rootlocalhost ~]# ln -s /usr/share…...
【Spring Security】初识Spring Security
今天晚上因为一个项目问题,而正式开始学习Spring Security。 这个问题是“APP端的操作员应仅可查看管理后台的项目负责人分配给自己的计划”。 一、Spring Security的核心组件: Spring Security的核心组件包括:SecurityContextHolder、Auth…...

配置单区域OSPF
目录 引言 一、搭建基础网络 1.1 配置网络拓扑图如下 1.2 IP地址表 二、测试每个网段都能单独连通 2.1 PC0 ping通Router1所有接口 2.2 PC1 ping通Router1所有接口 2.3 PC2 ping通Router2所有接口 2.4 PC3 ping通Router2所有接口 2.5 PC4 ping通Router3所有接口 2.…...
SQL中的游标是什么?
在 SQL 中,游标(Cursor)是一种用于遍历结果集的数据库对象。它允许开发者在 SQL 查询的结果集中逐行或逐批处理数据。 具体来说,SQL 中的游标通常用于以下目的: 遍历结果集:当一个 SQL 查询返回多行结果时…...

7. LangChain4j如何使用统一api调用?
前言 当我们对接LangChain4j的时候,面对复杂的各种各样的大模型的api的对接,让很多开发者感到力不从心。在每个大模型的api都不一样的时候?该如何快捷的切换模型的使用呢? 这时,One-API应运而生,它以其简洁…...

RPM、YUM 安装 xtrabackup 8 (mysql 热备系列一)包含rpm安装 mysql 8 配置主从
RPM安装 percona-xtrabackup-80-8.0.35-30.1.el7.x86_64.rpm 官网: https://www.percona.com/ 下载地址: https://www.percona.com/downloads wget https://downloads.percona.com/downloads/percona-distribution-mysql-ps/percona-distribution-mysq…...

maven项目打成可运行的jar及pom中的依赖一同打包
maven项目打jar及pom中的依赖一同打包 最近开发中有个需求,不部署新的服务,只jar包执行 那maven项目中,代码如何以jar的方式运行、如何把代码打成jar、pom中的依赖如何与代码一同打到jar包中? 1、代码如何以jar的方式运行&…...

Gettler‘s Screep World 笔记 Ⅰ
夏促时候刚刚入坑,写个笔记叭~ 环境配置 参考 HoPGoldy 大佬的简书,先配置下开发环境 萌新去看大佬的详细教程,我这里比较简单,有前端基础的可以直接抄 VSCode 跳过 node 我配的是v18.18.2 换源 npm config set registry h…...
联合体(union)的定义以及如何与结构体(struct)不同
联合体(Union)是一种特殊的数据类型,它允许在相同的内存位置存储不同的数据类型。但是,在任何给定的时间点,联合体只能存储其中的一个值;这意味着联合体的大小是其最大成员的大小,因为它必须足够…...

【Spark官方文档部分翻译】RDD编程指南(RDD Programming Guide)
写在前面 内容如何选择 本翻译只翻译本人认为精华的部分,本人认为的Spark的一些核心理念,编程思想。一些特别基础的操作包括但不限于搭建环境就不在此赘述了。 配套版本 本系列基于Spark 3.3.1,Scala 2.12.10,进行翻译总结 原…...

前端八股文 $set
为什么会有$set vue2中对数组中新增的属性是监听不到的 如图 vue 插件中有但是 视图中没有刷新 解决方法 解决就是 $set() 就是在数组中新增属性的时候可以重新渲染视图 具体的写法 写法 就是 第一个 是在那个对象上新增 第二个参数 是新增的属性 第三个参数是 新增的属性…...

Connecting weaviate with langflow across docker containers
题意:在Docker容器之间连接Weaviate与Langflow 问题背景: I am trying to build a local RAG application using Langflow. For my vectore store, I want to use a local Weaviate instance, hosted in a separate docker container on the same netwo…...
【linux vim使用说明】
基本概念 提示:本文是网络资源整理 模式: vim 有多种模式,每种模式都有不同的功能。 普通模式 (Normal Mode): 默认模式,用于导航和执行命令。插入模式 (Insert Mode): 用于文本输入。可以通过按 i 进入。可视模式 (Visual Mode): 用于选择…...

cocos2d-x安装和项目
首先多方查找资料发现教程很简洁,发现对自己的操作方面没多大帮助,后来干脆去官网,好像也很简洁。基于这样一个原因,加上我首次碰cocos2d-x,决定记录一下整个流程,解决实际操作上的疑惑。 涉及的方面&…...
web vue 项目 Docker化部署
Web 项目 Docker 化部署详细教程 目录 Web 项目 Docker 化部署概述Dockerfile 详解 构建阶段生产阶段 构建和运行 Docker 镜像 1. Web 项目 Docker 化部署概述 Docker 化部署的主要步骤分为以下几个阶段: 构建阶段(Build Stage):…...

XCTF-web-easyupload
试了试php,php7,pht,phtml等,都没有用 尝试.user.ini 抓包修改将.user.ini修改为jpg图片 在上传一个123.jpg 用蚁剑连接,得到flag...

7.4.分块查找
一.分块查找的算法思想: 1.实例: 以上述图片的顺序表为例, 该顺序表的数据元素从整体来看是乱序的,但如果把这些数据元素分成一块一块的小区间, 第一个区间[0,1]索引上的数据元素都是小于等于10的, 第二…...

多模态2025:技术路线“神仙打架”,视频生成冲上云霄
文|魏琳华 编|王一粟 一场大会,聚集了中国多模态大模型的“半壁江山”。 智源大会2025为期两天的论坛中,汇集了学界、创业公司和大厂等三方的热门选手,关于多模态的集中讨论达到了前所未有的热度。其中,…...

CTF show Web 红包题第六弹
提示 1.不是SQL注入 2.需要找关键源码 思路 进入页面发现是一个登录框,很难让人不联想到SQL注入,但提示都说了不是SQL注入,所以就不往这方面想了 先查看一下网页源码,发现一段JavaScript代码,有一个关键类ctfs…...

Vue3 + Element Plus + TypeScript中el-transfer穿梭框组件使用详解及示例
使用详解 Element Plus 的 el-transfer 组件是一个强大的穿梭框组件,常用于在两个集合之间进行数据转移,如权限分配、数据选择等场景。下面我将详细介绍其用法并提供一个完整示例。 核心特性与用法 基本属性 v-model:绑定右侧列表的值&…...

ESP32 I2S音频总线学习笔记(四): INMP441采集音频并实时播放
简介 前面两期文章我们介绍了I2S的读取和写入,一个是通过INMP441麦克风模块采集音频,一个是通过PCM5102A模块播放音频,那如果我们将两者结合起来,将麦克风采集到的音频通过PCM5102A播放,是不是就可以做一个扩音器了呢…...
鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个医院查看报告小程序
一、开发环境准备 工具安装: 下载安装DevEco Studio 4.0(支持HarmonyOS 5)配置HarmonyOS SDK 5.0确保Node.js版本≥14 项目初始化: ohpm init harmony/hospital-report-app 二、核心功能模块实现 1. 报告列表…...

令牌桶 滑动窗口->限流 分布式信号量->限并发的原理 lua脚本分析介绍
文章目录 前言限流限制并发的实际理解限流令牌桶代码实现结果分析令牌桶lua的模拟实现原理总结: 滑动窗口代码实现结果分析lua脚本原理解析 限并发分布式信号量代码实现结果分析lua脚本实现原理 双注解去实现限流 并发结果分析: 实际业务去理解体会统一注…...

【OSG学习笔记】Day 16: 骨骼动画与蒙皮(osgAnimation)
骨骼动画基础 骨骼动画是 3D 计算机图形中常用的技术,它通过以下两个主要组件实现角色动画。 骨骼系统 (Skeleton):由层级结构的骨头组成,类似于人体骨骼蒙皮 (Mesh Skinning):将模型网格顶点绑定到骨骼上,使骨骼移动…...