Python列表计算相邻元素增减差值及统计递增次数的实现方法
实现代码及说明
首先定义测试用的原始列表:nums = [199, 200, 208, 210, 200, 207, 240]
1. 计算全量相邻元素增减差值
通过列表推导式遍历计算即可,代码简洁高效:
# 生成相邻差值列表,正值为递增、负值为递减 diff_list = [nums[i] - nums[i-1] for i in range(1, len(nums))] print(diff_list) # 输出结果:[1, 8, 2, -10, 7, 33]
如果需要输出问题示例中的文字说明格式,可以用循环实现:
for i in range(1, len(nums)): diff = nums[i] - nums[i-1] print(f"{nums[i-1]}到{nums[i]}差值为{diff}")
2. 统计相邻元素递增总次数
直接统计差值列表中大于0的元素数量即可,也可以单次遍历避免额外存储差值列表(适合大数据量场景):
方法一:基于已有差值列表统计
increase_count = sum(1 for d in diff_list if d > 0) print(increase_count) # 输出结果:5
方法二:单次遍历直接统计
increase_count = 0 for i in range(1, len(nums)): if nums[i] > nums[i-1]: increase_count += 1 print(increase_count) # 输出结果:5
内容的提问来源于stack exchange,提问作者degr8sid
相关产品推荐
相关产品推荐

