Python酷库之旅-第三方库Pandas(089)

目录

一、用法精讲

376、pandas.Series.list.flatten方法

376-1、语法

376-2、参数

376-3、功能

376-4、返回值

376-5、说明

376-6、用法

376-6-1、数据准备

376-6-2、代码示例

376-6-3、结果输出

377、pandas.Series.list.__getitem__魔法方法

377-1、语法

377-2、参数

377-3、功能

377-4、返回值 

377-5、说明

377-6、用法

377-6-1、数据准备

377-6-2、代码示例

377-6-3、结果输出

378、pandas.Series.struct.field方法

378-1、语法

378-2、参数

378-3、功能

378-4、返回值

378-5、说明

378-6、用法

378-6-1、数据准备

378-6-2、代码示例

378-6-3、结果输出

379、pandas.Series.struct.explode方法

379-1、语法

379-2、参数

379-3、功能

379-4、返回值

379-5、说明

379-6、用法

379-6-1、数据准备

379-6-2、代码示例

379-6-3、结果输出

380、pandas.Flags类

380-1、语法

380-2、参数

380-3、功能

380-4、返回值

380-5、说明

380-6、用法

380-6-1、数据准备

380-6-2、代码示例

380-6-3、结果输出

二、推荐阅读

1、Python筑基之旅

2、Python函数之旅

3、Python算法之旅

4、Python魔法之旅

5、博客个人主页

一、用法精讲

376、pandas.Series.list.flatten方法
376-1、语法
# 376、pandas.Series.list.flatten方法
pandas.Series.list.flatten()
Flatten list values.Returns:
pandas.Series
The data from all lists in the series flattened.
376-2、参数

        无

376-3、功能

        将嵌套的列表或数组结构扁平化,即将多层嵌套的列表转换为一维列表,这对于处理复杂的数据结构非常有用,特别是在数据分析和清洗过程中,可以更直观地分析数据。

376-4、返回值

        返回一个新的列表,它是原始嵌套列表的扁平化版本,返回的列表包含原始列表中所有的元素,但不再具有任何嵌套结构。

376-5、说明

        使用场景:

376-5-1、数据清理:在数据集中,有时我们可能需要清理包含嵌套列表的列,通过扁平化这些列表,可以更容易地分析和处理数据。例如,处理用户的购物车内容,将每个购物车中的商品合并到一个单一列表中,以便于后续分析。

376-5-2、数据汇总:当你需要对嵌套列表中的数据进行汇总时,扁平化可以大大简化这一过程。例如,可以从多个用户的反馈中提取出所有的关键字,并将它们汇总到一个列表中,以便后续进行频率分析或情感分析。

376-5-3、特征工程:在机器学习和深度学习中,特征工程是数据预处理的重要步骤,如果你的数据集中包含了列表形式的特征(例如,一个用户的观看记录),可以使用flatten()方法将这些嵌套特征扁平化,从而将其转化为模型可以接受的一维格式。

376-5-4、数据可视化准备:在准备可视化数据时,尤其是绘制图表或进行统计分析时,扁平化的数据结构更易于使用。例如,在制作条形图或者饼图时,确保数据是一维的可以减少处理的复杂性。

376-5-5、处理JSON或API数据:在使用API获取数据时,返回的结果往往包含嵌套结构(例如,嵌套的JSON对象),使用该方法可以帮助快速处理并提取出需要的信息,使得进一步的数据分析或存储工作更加高效。

376-5-6、数据整合与合并:当从多个来源收集数据时,有些数据可能会以不同的嵌套方式存储,通过扁平化这些列表,可以得到一致的数据格式,从而便于后续合并或整合。

376-6、用法
376-6-1、数据准备
376-6-2、代码示例
# 376、pandas.Series.list.flatten方法
# 376-1、数据清理
import pandas as pd
# 构造数据
data = {'user_id': [1, 2, 3],'shopping_cart': [['item1', 'item2'], ['item3'], ['item4', 'item5', 'item6']]
}
df = pd.DataFrame(data)
# 扁平化购物车
flattened_cart = df.explode('shopping_cart')
print(flattened_cart, end='\n\n')# 376-2、数据汇总
import pandas as pd
# 构造数据
data = {'user_id': [1, 2, 3],'feedback': [['great', 'satisfaction'], ['okay'], ['great', 'good', 'excellent']]
}
df = pd.DataFrame(data)
# 扁平化反馈
flattened_feedback = df.explode('feedback')
# 汇总关键词
keyword_counts = flattened_feedback['feedback'].value_counts()
print(keyword_counts, end='\n\n')# 376-3、特征工程
import pandas as pd
# 构造数据
data = {'user_id': [1, 2, 3],'watch_history': [['Movie A', 'Movie B'], ['Movie C'], ['Movie A', 'Movie D']]
}
df = pd.DataFrame(data)
# 扁平化观看历史
flattened_watch_history = df.explode('watch_history')
# 准备特征(这里简单以独热编码的形式展示)
features = pd.get_dummies(flattened_watch_history['watch_history'])
print(features, end='\n\n')# 376-4、数据可视化准备
import pandas as pd
import matplotlib.pyplot as plt
# 构造数据
data = {'user_id': [1, 2, 3],'watch_history': [['Movie A', 'Movie B'], ['Movie C'], ['Movie A', 'Movie D', 'Movie E']]
}
df = pd.DataFrame(data)
# 扁平化观看历史
flattened_watch_history = df.explode('watch_history')
# 统计每部电影的观看次数
watch_counts = flattened_watch_history['watch_history'].value_counts()
# 可视化
watch_counts.plot(kind='bar', color='purple')
plt.title('Movie Watch Counts')
plt.xlabel('Movies')
plt.xticks(rotation=25, ha='right', color='#FF4444', fontweight='bold')
plt.ylabel('Counts')
plt.show()# 376-5、处理JSON或API数据
import pandas as pd
# 模拟从API获取的数据,包含嵌套结构
data = [{'user_id': 1, 'purchases': ['item1', 'item2']},{'user_id': 2, 'purchases': ['item3']},{'user_id': 3, 'purchases': ['item4', 'item5', 'item6']}
]
# 转换为DataFrame
df = pd.DataFrame(data)
# 扁平化购买记录
flattened_purchases = df.explode('purchases')
print(flattened_purchases, end='\n\n')# 376-6、数据整合与合并
import pandas as pd
# 源1的数据
data1 = {'user_id': [1, 2],'items': [['item1', 'item2'], ['item3']]
}
# 源2的数据
data2 = {'user_id': [2, 3],'items': [['item4'], ['item5', 'item6']]
}
df1 = pd.DataFrame(data1)
df2 = pd.DataFrame(data2)
# 扁平化
df1_flat = df1.explode('items')
df2_flat = df2.explode('items')
# 合并数据
merged_df = pd.concat([df1_flat, df2_flat], ignore_index=True)
print(merged_df)
376-6-3、结果输出
# 376、pandas.Series.list.flatten方法
# 376-1、数据清理
#    user_id shopping_cart
# 0        1         item1
# 0        1         item2
# 1        2         item3
# 2        3         item4
# 2        3         item5
# 2        3         item6# 376-2、数据汇总
# feedback
# great           2
# satisfaction    1
# okay            1
# good            1
# excellent       1
# Name: count, dtype: int64# 376-3、特征工程
#    Movie A  Movie B  Movie C  Movie D
# 0     True    False    False    False
# 0    False     True    False    False
# 1    False    False     True    False
# 2     True    False    False    False
# 2    False    False    False     True# 376-4、数据可视化准备
# 见图1# 376-5、处理JSON或API数据
#    user_id purchases
# 0        1     item1
# 0        1     item2
# 1        2     item3
# 2        3     item4
# 2        3     item5
# 2        3     item6# 376-6、数据整合与合并
#    user_id  items
# 0        1  item1
# 1        1  item2
# 2        2  item3
# 3        2  item4
# 4        3  item5
# 5        3  item6

图1:

 

377、pandas.Series.list.__getitem__魔法方法
377-1、语法
# 377、pandas.Series.list.__getitem__魔法方法
pandas.Series.list.__getitem__(key)
Index or slice lists in the Series.Parameters:
key
int | slice
Index or slice of indices to access from each list.Returns:
pandas.Series
The list at requested index.
377-2、参数

377-2-1、key(必须)具体来说,key可以是以下几种类型:

377-2-1-1、单个整数:如果你提供一个单整数key(如0,1等),它将返回Series中该位置上的元素,这是通过位置索引来获取的。

377-2-1-2、切片对象:如果提供一个切片对象(如slice(0,3),它将返回对应范围内的元素组成的列表。

377-2-1-3、布尔数组:如果提供一个布尔数组(如[True, False, True]),它将返回所有对应为True的位置上的元素。

377-2-1-4、列表或数组:如果提供一个包含多个索引的列表或数组(如[1, 3]),它将返回对应位置的元素组成的新列表。

377-3、功能

        在于根据输入的key访问Series中的元素,它允许用户灵活地访问单个元素或多个元素,并返回相应的结果。

377-4、返回值 
  • 如果key是单个整数,返回该位置上的元素(通常是一个值或列表)。
  • 如果key是切片,返回一个新列表,包含在切片范围内的所有元素。
  • 如果key是布尔数组,则返回对应为True的元素组成的新列表。
  • 如果key是一个列表或数组,则返回对应位置的元素组成的新列表。
377-5、说明

        使用场景:

377-5-1、数据提取:当你需要从时间序列、分类数据或其他类型的序列中提取特定值时,该方法非常有用,你可以使用索引提取初始化数据,方便后续分析。

377-5-2、数据过滤:利用布尔索引提取符合特定条件的元素。例如,你可以根据某些逻辑条件来选择数据,这在数据清洗和预处理时非常常见。

377-5-3、批量操作:通过传递列表或数组作为索引,可以一次性提取多个元素。例如,当你只想分析某些特定日期的数据时,可以通过列表索引快速提取这些数据。

377-5-4、切片操作:通过切片对象提取一段连续的数据。这适用于需要处理一段时间序列(如金融数据)或一组相关指标的情况,例如计算某个时间段的平均值或总和。

377-5-5、动态索引访问:在数据分析过程中,可能会基于用户交互、算法输出或其他动态条件调整需要访问的元素,该方法可以灵活实现这种动态访问。

377-5-6、数据转换:在处理复杂数据时,可以借助该方法提取并转换数据格式。例如,将数据从列表转换为数组格式或提取特定列的数据进行后续处理。

377-6、用法
377-6-1、数据准备
377-6-2、代码示例
# 377、pandas.Series.list.__getitem__魔法方法
# 377-1、数据提取
import pandas as pd
# 创建一个数据序列
s = pd.Series([10, 20, 30, 40])
# 提取索引为2的值
value = s[2]
print(f"提取的值: {value}", end='\n\n')# 377-2、数据过滤
import pandas as pd
# 创建一个数据序列
s = pd.Series([1, 2, 3, 4, 5])
# 提取大于3的元素
filtered = s[s > 3]
print(f"过滤后的数据: {filtered.tolist()}", end='\n\n')# 377-3、批量操作
import pandas as pd
# 创建一个数据序列
s = pd.Series(['a', 'b', 'c', 'd'])
# 提取索引为0和2的元素
subset = s[[0, 2]]
print(f"提取的子集: {subset.tolist()}", end='\n\n')# 377-4、切片操作
import pandas as pd
# 创建一个数据序列
s = pd.Series([1, 2, 3, 4, 5])
# 切片操作
slice_result = s[1:4]
print(f"切片结果: {slice_result.tolist()}", end='\n\n')# 377-5、动态索引访问
import pandas as pd
# 创建一个数据序列
s = pd.Series(['apple', 'banana', 'cherry', 'date'])
# 假设我们有一个动态索引列表
dynamic_indices = [1, 3]
# 根据动态索引提取数据
dynamic_result = s[dynamic_indices]
print(f"动态提取的结果: {dynamic_result.tolist()}", end='\n\n')# 377-6、数据转换
import pandas as pd
# 创建一个数据序列
s = pd.Series([10, 20, 30, 40])
# 提取数据并转换为NumPy数组
array_result = s.to_numpy()
print(f"转换为数组: {array_result}")  
377-6-3、结果输出
# 377、pandas.Series.list.__getitem__魔法方法
# 377-1、数据提取
# 提取的值: 30# 377-2、数据过滤
# 过滤后的数据: [4, 5]# 377-3、批量操作
# 提取的子集: ['a', 'c']# 377-4、切片操作
# 切片结果: [2, 3, 4]# 377-5、动态索引访问
# 动态提取的结果: ['banana', 'date']# 377-6、数据转换
# 转换为数组: [10 20 30 40]
378、pandas.Series.struct.field方法
378-1、语法
# 378、pandas.Series.struct.field方法
pandas.Series.struct.field(name_or_index)
Extract a child field of a struct as a Series.Parameters:
name_or_indexstr | bytes | int | expression | list
Name or index of the child field to extract.For list-like inputs, this will index into a nested struct.Returns:
pandas.Series
The data corresponding to the selected child field.
378-2、参数

378-2-1、name_or_index(必须)该参数可以是字符串或整数,具体取决于你想要访问的字段的名称或索引,如果是字符串,表示你想获取的字段的名称;如果是整数,表示字段的位置索引(从0开始)。

378-3、功能

        用于访问Series中每个元素的特定字段,方便对结构化数据进行处理和分析,它通常与包含多个字段的复杂数据结构结合使用,比如从Series中提取某个字段的信息。

378-4、返回值

        返回一个Series对象,其中包含从原始Series中选定字段提取的值,如果字段不存在,通常会引发错误,提示无法找到指定的字段。

378-5、说明

        无

378-6、用法
378-6-1、数据准备
378-6-2、代码示例
# 378、pandas.Series.struct.field方法
import pyarrow as pa
import pandas as pd
import pyarrow.compute as pc
s = pd.Series([{"version": 1, "project": "pandas"},{"version": 2, "project": "pandas"},{"version": 1, "project": "numpy"},],dtype=pd.ArrowDtype(pa.struct([("version", pa.int64()), ("project", pa.string())]))
)
data_by_name = s.struct.field("project")
print(data_by_name)
data_by_index = s.struct.field(0)
print(data_by_index)
data = s.struct.field(pc.field("project"))
print(data)
378-6-3、结果输出
# 378、pandas.Series.struct.field方法
# 0    pandas
# 1    pandas
# 2     numpy
# Name: project, dtype: string[pyarrow]
# 0    1
# 1    2
# 2    1
# Name: version, dtype: int64[pyarrow]
# 0    pandas
# 1    pandas
# 2     numpy
# Name: project, dtype: string[pyarrow]
379、pandas.Series.struct.explode方法
379-1、语法
# 379、pandas.Series.struct.explode方法
pandas.Series.struct.explode()
Extract all child fields of a struct as a DataFrame.Returns:
pandas.DataFrame
The data corresponding to all child fields.
379-2、参数

        无

379-3、功能

        返回一个新的DataFrame或Series,其中列表或数组的每个元素都在单独的一行中。

379-4、返回值

        对于DataFrame,返回一个新的DataFrame,其中原来包含列表的列被“展开”为多行;对于Series,返回一个新的Series,播放同样的效果。

379-5、说明

        无

379-6、用法
379-6-1、数据准备
379-6-2、代码示例
# 379、pandas.Series.struct.explode方法
import pandas as pd
data = {'id': [1, 2, 3],'fruits': [['apple', 'banana'], ['orange'], ['grape', 'kiwi']]
}
df = pd.DataFrame(data)
exploded_df = df.explode('fruits')
print(exploded_df)
379-6-3、结果输出
# 379、pandas.Series.struct.explode方法
#    id  fruits
# 0   1   apple
# 0   1  banana
# 1   2  orange
# 2   3   grape
# 2   3    kiwi
380、pandas.Flags
380-1、语法
# 380、pandas.Flags类
class pandas.Flags(obj, *, allows_duplicate_labels)
Flags that apply to pandas objects.
Parameters:
objSeries or DataFrame
The object these flags are associated with.
allows_duplicate_labelsbool, default True
Whether to allow duplicate labels in this object. By default, duplicate labels are permitted. Setting this to False will cause an errors.DuplicateLabelError to be raised when index (or columns for DataFrame) is not unique, or any subsequent operation on introduces duplicates. See Disallowing Duplicate Labels for more.
Warning
This is an experimental feature. Currently, many methods fail to propagate the allows_duplicate_labels value. In future versions it is expected that every method taking or returning one or more DataFrame or Series objects will propagate allows_duplicate_labels.
380-2、参数

380-2-1、obj(必须)需要设置Flags的对象,它指明了要应用Flags的目标对象。

380-2-2、allows_duplicate_labels(可选,默认值为False)表示是否允许在对象中存在重复的标签,默认值为False,表示不允许重复标签;如果设置为True,则对象可以有重复的标签。

380-3、功能

        用于定义DataFrame或Series中的标签的属性,该类可以帮助用户指定对某些操作的行为,比如是否允许重复标签。

380-4、返回值

        返回一个Flags对象,表示所提供对象的标签属性,这可以用于后续的数据操作以确保所应用标志的有效性和一致性。

380-5、说明

380-5-1、使用Flags设置的属性通常会影响到后续的操作,所以在创建DataFrame或Series之后,理解这些标志的作用是非常重要的。

380-5-2、标签的重复与否可以影响到数据分析和处理的结果,因此在创建或操作对象时需谨慎考虑这些设置。

380-6、用法
380-6-1、数据准备
380-6-2、代码示例
# 380、pandas.Flags类
import pandas as pd
# 创建一个DataFrame
df = pd.DataFrame({'A': [1, 2, 3],'B': [4, 5, 6]
})
# 设置Flags,允许重复标签
flags = pd.Flags(df, allows_duplicate_labels=True)
# 检查Flags属性
print(flags.allows_duplicate_labels)
380-6-3、结果输出
# 380、pandas.Flags类
# True

二、推荐阅读

1、Python筑基之旅
2、Python函数之旅
3、Python算法之旅
4、Python魔法之旅
5、博客个人主页

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/51871.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

机器学习第十一章--特征选择与稀疏学习

一、子集搜索与评价 我们将属性称为 “特征”(feature),对当前学习任务有用的属性称为 “相关特征”(relevant feature)、没什么用的属性称为 “无关特征”(irrelevant feature).从给定的特征集合中选择出相关特征子集的过程&…

C++竞赛初阶L1-13-第五单元-循环嵌套(29~30课)535: T456454 数字统计

题目内容 请统计某个给定范围 [L,R] 的所有整数中,数字 2 出现的次数。 比如给定范围 [2,22],数字 2 在数 2 中出现了 1 次,在数 12 中出现 1 次,在数 20 中出现 1 次,在数 21 中出现 1 次,在数 22 中出现…

Java项目集成RocketMQ

文章目录 1.调整MQ的配置1.进入bin目录2.关闭broker和namesrv3.查看进程确认关闭4.编辑配置文件broker.conf,配置brokerIP15.开放端口109116.重新启动1.进入bin目录2.启动mqnamesrv和mqbroker1.启动 NameServer 并将输出重定向到 mqnamesrv.log2.**启动 Broker 并将…

easyexcel--导入导出实现自定义格式转换

自定义格式 我们在数据库设计的时候经常会有枚举类型,如0表示普通用户,1表示VIP用户等,这在excel导入的时候,我们会填普通用户而不是0,这样就需要用到自定义格式把普通用户转换成0,我写了一个通用的抽象类…

深度学习基础—RMSprop算法与Adam 优化算法

1.RMSprop算法 1.1.算法流程 除了动量梯度下降法,RMSprop算法也可以加快梯度下降,这个算法的算法流程如下:深度学习基础—动量梯度下降法http://t.csdnimg.cn/zeGRo 1.2.算法原理 和动量梯度下降不同的是,对dW和db的变成了平方项…

什么是视频比特率?与视频时长是什么关系

​ ‌比特率是指单位时间内传输或处理的比特的数量,单位为‌bps(‌bit per second)。‌ 比特率经常用于描述在电信和计算领域中数据传输的速度,也可以作为衡量音频和视频文件数据率的指标。比特率越高,传送的数据越大,音频或视频…

springsecurity 登录认证一(ajax)

一、准备工作 1.1 导入依赖 因springboot 3.0 以上版本只能支持java17 顾使用2.5.0 版本 <parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.5.0</version><…

代码随想录 day 42 动态规划 买卖股票

第九章 动态规划part09 188.买卖股票的最佳时机IV 本题是123.买卖股票的最佳时机III 的进阶版 视频讲解&#xff1a;https://www.bilibili.com/video/BV16M411U7XJ https://programmercarl.com/0188.%E4%B9%B0%E5%8D%96%E8%82%A1%E7%A5%A8%E7%9A%84%E6%9C%80%E4%BD%B3%E6%97%…

鸿蒙开发入门day05-ArkTs语言(接口与关键字)

(创作不易&#xff0c;感谢有你&#xff0c;你的支持&#xff0c;就是我前行的最大动力&#xff0c;如果看完对你有帮助&#xff0c;还请三连支持一波哇ヾ(&#xff20;^∇^&#xff20;)ノ&#xff09; 目录 ArkTS语言介绍 接口 接口属性 接口继承 泛型类型和函数 泛型…

R语言统计分析——回归诊断2

参考资料&#xff1a;R语言实战【第2版】 R语言的car包提供的大量函数&#xff0c;大大增强了拟合和评价回归模型的能力。如下&#xff1a; 函数目的qqPlot()分位数比较图durbinWatsonTest()对误差自相关性做Durbin-Watson检验crPlots()成分与残差图ncvTest()对非恒定的误差方…

transformer-explainer

安装和启动 找到这个项目&#xff0c;然后装好了。 这个项目的目的如名字。 https://github.com/poloclub/transformer-explainerTransformer Explained: Learn How LLM Transformer Models Work with Interactive Visualization - poloclub/transformer-explainerhttps:/…

顶顶通呼叫中心中间件-一句话识别语音识别安装步骤

顶顶通呼叫中心中间件-一句话模型安装步骤&#xff0c;对接mod_vad。一句话识别&#xff08;http接口提交录音文件识别&#xff09; 一、安装一句话模型 一句话识别&#xff08;http接口提交录音文件识别&#xff09;&#xff0c;比如对接mod_vad(老电话机器人接口) curl -s…

web开发,过滤器,前后端交互

目录 web开发概述 web开发环境搭建 Servlet概述 Servlet的作用&#xff1a; Servlet创建和使用 Servlet生命周期 http请求 过滤器 过滤器的使用场景&#xff1a; 通过Filter接口来实现&#xff1a; 前后端项目之间的交互&#xff1a; 1、同步请求 2、异步请求 优化…

Xv6虚拟内存(三):进程地址空间

阅读材料 Xv6代码&#xff1a;memlayout.h、proc.h、proc.c教材3.6节 进程地址空间初始化 proc_pagetable函数 该函数用于初始化一个用户进程的地址空间&#xff0c;返回该地址空间的根页表基地址。该函数只干两件事&#xff1a;映射trampoline页到最高虚拟地址处&#xff0…

【软件测试】功能测试理论基础

目录 项目的测试流程&#x1f3f4; 需求评审 评审形式 测试人员在需求评审中职责 测试计划与方案 测试计划 问题 测试方案&#x1f3f4; 测试计划与方案的对比 功能测试设计&#x1f3f4; 测试设计的步骤 项目的测试流程&#x1f3f4; 作用&#xff1a; 有序有效开展…

Flink消费Kafka数据积压排查解决

0、背景 有个Flink任务每天不定时会出现数据积压&#xff0c;无论是白天还是数据量很少的夜里&#xff0c;且积压的数据量会越来越多&#xff0c;得不到缓解&#xff0c;只能每日在积压告警后重启&#xff0c;重启之后消费能力一点毛病没有&#xff0c;积压迅速缓解&#xff0…

平安城市/雪亮工程现状及需求分析:EasyCVR视频汇聚平台助力雪亮工程项目建设

一、背景现状 经过近几年的努力&#xff0c;平安城市雪亮工程建设取得了显著的成绩&#xff0c;完成了前端高清视频点位和高清卡口系统建设&#xff0c;建成了&#xff08;视频监控类&#xff09;、&#xff08;卡口类&#xff09;和&#xff08;应用类&#xff09;的平台。这…

1.Linux_常识

UNIX、Linux、GNU 1、UNIX UNIX是一个分时操作系统&#xff0c;特点是多用户、多任务 实时操作系统&#xff1a;来了请求就去解决请求 分时操作系统&#xff1a;来了请求先存着&#xff0c;通过调度轮到执行时执行 2、Linux Linux是一个操作系统内核 发行版本&#xff1…

C++练习备忘录

1. 保留两位小数输出格式 #include <iostream> #include <iomanip> using namespace std; int main() {double S 0;S (15 25) * 20 / 2;cout << fixed << setprecision(2) << S;return 0; }2. 设置输出宽度 #include <iostream> #inclu…

OD C卷 - 传递悄悄话

传递悄悄话 &#xff08;100&#xff09; 给定一个二叉树&#xff0c;节点采用顺序存储&#xff0c;如 i0 表示根节点&#xff0c;2i 1 表示左子树根&#xff0c;2i 2 表示右子树根;每个节点站一个人&#xff0c;节点数值表示由父节点到该节点传递消息需要的时间&#xff1b…