首页 最新 热门 推荐

  • 首页
  • 最新
  • 热门
  • 推荐

字符串列表分类求平均值

  • 24-01-06 05:59
  • 4580
  • 8094
blog.csdn.net

给定一字符串列表数据,按颜色分类计算价格平均值并写入列表。


  (本笔记适合对python字符串和列表基本烂熟的 coder 翻阅)


【学习的细节是欢悦的历程】

  • Python 官网:https://www.python.org/

  • Free:大咖免费“圣经”教程《 python 完全自学教程》,不仅仅是基础那么简单……
    地址:https://lqpybook.readthedocs.io/


  自学并不是什么神秘的东西,一个人一辈子自学的时间总是比在学校学习的时间长,没有老师的时候总是比有老师的时候多。
            —— 华罗庚


  • My CSDN主页、My HOT博、My Python 学习个人备忘录
  • 好文力荐、 老齐教室
等风来,不如追风去……


给定一字符串列表
字符串列表分类求平均值
(按颜色分类计算价格平均值)


本文质量分:

【 96 】
本文地址: http://iyenn.com/rec/1968543.html

CSDN质量分查询入口:http://www.csdn.net/qc


目 录

  • ◆ 字符串列表分类求平均值
    • 1、题目描述
    • 2、解题思路
    • 3、python 代码实现
    • 4、代码全注释&输出格式化


◆ 字符串列表分类求平均值


1、题目描述


【题目来源于 CSDN 问答社区提问“字符串列表分类求平均值”】

  • 题目截屏图片
    在这里插入图片描述



回页目录


2、解题思路


我的思路:
  • a.数据准备
  1. 题主的文本没有放代码片中,不可拷贝。手打太麻烦,我决定提取截屏图片(建议CSDN下一个版本优化一下,让自由选取拷贝文本字符串?);
  2. 修正文本识别差错,粘贴于代码中。

  • b.操作步骤
  1. 按“黑|咖”、“黑|白”、“祖母石绿|咖”三个颜色拆分。用列表解析式实施;
  2. 用float()函数转换数值字符串计算平均值;
  3. 将平均值追加到颜色分类列表;
  4. 拼接三个颜色分类列表。可以直接用+运算符拼接,也可以用list.extend()方法。
  应该还应有更妙的方式解决,我今天在这里选择了简单粗暴的“手撕”列表。



回页目录


3、python 代码实现


  • python 代码运行效果截屏图片
    在这里插入图片描述

  • python 代码

#!/sur/bin/nve python
# coding: utf-8


def do_average(lis):
    ''' 求平均 '''
    add = ['', '', '', ''] # 欲添加的行初值。
    add[2] = lis[0][2] # 颜色赋值。
    count = 0 # 列表总值初值。
    
    for i in lis: # 遍历统计列表总值。
        count += 0 if i[1] == '电议' else float(i[1])

    add[1] = f"{count/len(lis):.2f}" # 写入平均值,保留两位小数。
    lis.append(add) # 原址追加平均值行。


mylist = [
        ['1号', '111.00', '黑|咖', 'nhdfjn'],
        ['英国', '110.00', '黑|白', 'nhdfjn'],
        ['客服口袋酒叟', '123.00', '祖母石绿|咖', 'nhdfjn'],
        ['AMG运动包', '电议', '黑|咖', 'nhdfjn'],
        ['dfdfd', '102.06', '黑|咖', 'nhdfjn'],
        ['辅导费郭德纲', '115.36', '黑|白', 'nhdfj n'],
        ['sjdisjmdi', '108.36', '祖母石绿|咖', 'nhdfin']
        ]

# 按色分组
black_brown = [i for i in mylist if i[2] == '黑|咖']
black_white = [i for i in mylist if i[2] == '黑|白']
emerald_brown = [i for i in mylist if i[2] == '祖母石绿|咖']


for i in (black_brown, black_white, emerald_brown): # 遍历轮询求平均。
    do_average(i) # 调用函数求平均。


print(f"\n原始列表:{mylist}\n\n处理后列表:\n{black_brown + black_white + emerald_brown}") # 拼接列表输出。


  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40



回页目录


4、代码全注释&输出格式化


  • 格式化输出效果截屏图片
    在这里插入图片描述

  • 格式化输出函数


def show(lis):
    ''' 格式化二维列表 '''
    lis_str = ', \n'.join(map(str, lis))
    return f"{'[':>5}\n{lis_str}\n{']':>5}"

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

  • 全注释代码
#!/sur/bin/nve python
# coding: utf-8


def do_average(lis):
    ''' 求平均 '''
    add = ['', '', '', ''] # 欲添加的行初值。
    add[2] = lis[0][2] # 颜色赋值。
    count = 0 # 列表总值初值。
    
    for i in lis: # 遍历统计列表总值。
        count += 0 if i[1] == '电议' else float(i[1])

    add[1] = f"{count/len(lis):.2f}" # 写入平均值,保留两位小数。
    lis.append(add) # 原址追加平均值行。


def show(lis):
    ''' 格式化二维列表 '''
    lis_str = ', \n'.join(map(str, lis))
    return f"{'[':>5}\n{lis_str}\n{']':>5}"


if __name__ == '__main__':
    mylist = [
        ['1号', '111.00', '黑|咖', 'nhdfjn'],
        ['英国', '110.00', '黑|白', 'nhdfjn'],
        ['客服口袋酒叟', '123.00', '祖母石绿|咖', 'nhdfjn'],
        ['AMG运动包', '电议', '黑|咖', 'nhdfjn'],
        ['dfdfd', '102.06', '黑|咖', 'nhdfjn'],
        ['辅导费郭德纲', '115.36', '黑|白', 'nhdfj n'],
        ['sjdisjmdi', '108.36', '祖母石绿|咖', 'nhdfin']
        ]

    # 列表解析按色分组
    black_brown = [i for i in mylist if i[2] == '黑|咖']
    black_white = [i for i in mylist if i[2] == '黑|白']
    emerald_brown = [i for i in mylist if i[2] == '祖母石绿|咖']


    for i in (black_brown, black_white, emerald_brown): # 遍历轮询求平均。
        do_average(i) # 调用函数求平均。

    print(f"\n原始列表:\n{show(mylist)}\n\n处理后列表:\n{show(black_brown + black_white + emerald_brown)}") # 拼接列表输出。

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45



回页首


上一篇:  换零钱II:零钱面值种类动态变化,类方法自动兑换最少零钱(贪心算法)(银行现存零钱面值种类动态变化但数量无限,类方法change()完成指定金额的最少零钱个数兑换)
下一篇: 

我的HOT博:

  本次共计收集 219 篇博文笔记信息,总阅读量 37.12w,平均阅读量 1694。已生成 25 篇阅读量不小于 3000 的博文笔记索引链接。数据采集于 2023-07-18 05:54:34 完成,用时 5 分 1.76 秒。


  1. 让QQ群昵称色变的神奇代码
    ( 56965 阅读)
    博文地址:https://blog.csdn.net/m0_57158496/article/details/122566500
    点赞:24   踩 :0  收藏:81  打赏:0  评论:17
    本篇博文笔记于 2022-01-18 19:15:08 首发,最晚于 2022-01-20 07:56:47 修改。
  2. ChatGPT国内镜像站初体验:聊天、Python代码生成等
    ( 54947 阅读)
    博文地址:https://blog.csdn.net/m0_57158496/article/details/129035387
    点赞:125   踩 :0  收藏:789  打赏:0  评论:75
    本篇博文笔记于 2023-02-14 23:46:33 首发,最晚于 2023-07-03 05:50:55 修改。
  3. pandas 数据类型之 DataFrame
    ( 8875 阅读)
    博文地址:https://blog.csdn.net/m0_57158496/article/details/124525814
    点赞:6   踩 :0  收藏:31  打赏:0  评论:0
    本篇博文笔记于 2022-05-01 13:20:17 首发,最晚于 2022-05-08 08:46:13 修改。
  4. 个人信息提取(字符串)
    ( 6995 阅读)
    博文地址:https://blog.csdn.net/m0_57158496/article/details/124244618
    点赞:1   踩 :0  收藏:12  打赏:0  评论:0
    本篇博文笔记于 2022-04-18 11:07:12 首发,最晚于 2022-04-20 13:17:54 修改。
  5. 罗马数字转换器|罗马数字生成器
    ( 6741 阅读)
    博文地址:https://blog.csdn.net/m0_57158496/article/details/122592047
    点赞:0   踩 :0  收藏:1  打赏:0  评论:0
    本篇博文笔记于 2022-01-19 23:26:42 首发,最晚于 2022-01-21 18:37:46 修改。
  6. Python字符串居中显示
    ( 6644 阅读)
    博文地址:https://blog.csdn.net/m0_57158496/article/details/122163023
    点赞:1   踩 :0  收藏:6  打赏:0  评论:1
    本篇博文笔记于 2021-12-26 23:35:29 发布。
  7. Python列表(list)反序(降序)的7种实现方式
    ( 5755 阅读)
    博文地址:https://blog.csdn.net/m0_57158496/article/details/128271700
    点赞:5   踩 :0  收藏:18  打赏:0  评论:8
    本篇博文笔记于 2022-12-11 23:54:15 首发,最晚于 2023-03-20 18:13:55 修改。
  8. 斐波那契数列的递归实现和for实现
    ( 5429 阅读)
    博文地址:https://blog.csdn.net/m0_57158496/article/details/122355295
    点赞:4   踩 :0  收藏:2  打赏:0  评论:8
    本篇博文笔记于 2022-01-06 23:27:40 发布。
  9. 练习:字符串统计(坑:f‘string‘报错)
    ( 4998 阅读)
    博文地址:https://blog.csdn.net/m0_57158496/article/details/121723096
    点赞:0   踩 :0  收藏:1  打赏:0  评论:0
    本篇博文笔记于 2021-12-04 22:54:29 发布。
  10. python清屏
    ( 4773 阅读)
    博文地址:https://blog.csdn.net/m0_57158496/article/details/120762101
    点赞:0   踩 :0  收藏:6  打赏:0  评论:0
    本篇博文笔记于 2021-10-14 13:47:21 发布。
  11. 练习:尼姆游戏(聪明版/傻瓜式•人机对战)
    ( 4763 阅读)
    博文地址:https://blog.csdn.net/m0_57158496/article/details/121645399
    点赞:14   踩 :0  收藏:42  打赏:0  评论:0
    本篇博文笔记于 2021-11-30 23:43:17 发布。
  12. 回车符、换行符和回车换行符
    ( 4713 阅读)
    博文地址:https://blog.csdn.net/m0_57158496/article/details/123109488
    点赞:1   踩 :0  收藏:2  打赏:0  评论:0
    本篇博文笔记于 2022-02-24 13:10:02 首发,最晚于 2022-02-25 20:07:40 修改。
  13. 练习:生成100个随机正整数
    ( 4109 阅读)
    博文地址:https://blog.csdn.net/m0_57158496/article/details/122558220
    点赞:1   踩 :0  收藏:6  打赏:0  评论:0
    本篇博文笔记于 2022-01-18 13:31:36 首发,最晚于 2022-01-20 07:58:12 修改。
  14. 密码强度检测器
    ( 4101 阅读)
    博文地址:https://blog.csdn.net/m0_57158496/article/details/121739694
    点赞:1   踩 :0  收藏:4  打赏:0  评论:0
    本篇博文笔记于 2021-12-06 09:08:25 首发,最晚于 2022-11-27 09:39:39 修改。
  15. 罗马数字转换器(用罗马数字构造元素的值取模实现)
    ( 3985 阅读)
    博文地址:https://blog.csdn.net/m0_57158496/article/details/122608526
    点赞:0   踩 :0  收藏:0  打赏:0  评论:0
    本篇博文笔记于 2022-01-20 19:38:12 首发,最晚于 2022-01-21 18:32:02 修改。
  16. 我的 Python.color() (Python 色彩打印控制)
    ( 3789 阅读)
    博文地址:https://blog.csdn.net/m0_57158496/article/details/123194259
    点赞:2   踩 :0  收藏:7  打赏:0  评论:0
    本篇博文笔记于 2022-02-28 22:46:21 首发,最晚于 2022-03-03 10:30:03 修改。
  17. 练习:班里有人和我同生日难吗?(概率probability、蒙特卡洛随机模拟法)
    ( 3770 阅读)
    博文地址:https://blog.csdn.net/m0_57158496/article/details/124424935
    点赞:1   踩 :0  收藏:4  打赏:0  评论:0
    本篇博文笔记于 2022-04-26 12:46:25 首发,最晚于 2022-04-27 21:22:07 修改。
  18. 练习:仿真模拟福彩双色球——中500w巨奖到底有多难?跑跑代码就晓得了。
    ( 3475 阅读)
    博文地址:https://blog.csdn.net/m0_57158496/article/details/125415626
    点赞:3   踩 :0  收藏:4  打赏:0  评论:3
    本篇博文笔记于 2022-06-22 19:54:20 首发,最晚于 2022-06-23 22:41:33 修改。
  19. random.sample()将在python 3.9x后续版本中被弃用
    ( 3338 阅读)
    博文地址:https://blog.csdn.net/m0_57158496/article/details/120657230
    点赞:0   踩 :0  收藏:0  打赏:0  评论:0
    本篇博文笔记于 2021-10-08 18:35:09 发布。
  20. 聊天消息敏感词屏蔽系统(字符串替换 str.replace(str1, *) )
    ( 3309 阅读)
    博文地址:https://blog.csdn.net/m0_57158496/article/details/124539589
    点赞:4   踩 :0  收藏:2  打赏:0  评论:3
    本篇博文笔记于 2022-05-02 13:02:39 首发,最晚于 2022-05-21 06:10:42 修改。
  21. Linux 脚本文件第一行的特殊注释符(井号和感叹号组合)的含义
    ( 3282 阅读)
    博文地址:https://blog.csdn.net/m0_57158496/article/details/123087606
    点赞:0   踩 :0  收藏:4  打赏:0  评论:3
    本篇博文笔记于 2022-02-23 13:08:07 首发,最晚于 2022-04-04 23:52:38 修改。
  22. 练习:求列表(整数列表)平衡点
    ( 3148 阅读)
    博文地址:https://blog.csdn.net/m0_57158496/article/details/121737612
    点赞:0   踩 :0  收藏:0  打赏:0  评论:0
    本篇博文笔记于 2021-12-05 23:28:10 发布。
  23. 练习:银行复利计算(用 for 循环解一道初中小题)
    ( 3043 阅读)
    博文地址:https://blog.csdn.net/m0_57158496/article/details/123854548
    点赞:0   踩 :0  收藏:0  打赏:0  评论:0
    本篇博文笔记于 2022-03-30 20:06:37 首发,最晚于 2022-04-06 18:15:16 修改。
  24. 练习:小炼二维数组
    ( 3030 阅读)
    博文地址:https://blog.csdn.net/m0_57158496/article/details/125175592
    点赞:9   踩 :0  收藏:5  打赏:0  评论:9
    本篇博文笔记于 2022-06-07 23:54:43 首发,最晚于 2022-06-08 00:31:49 修改。
  25. 练习:柱状图中最大矩形
    ( 3029 阅读)
    博文地址:https://blog.csdn.net/m0_57158496/article/details/122032365
    点赞:0   踩 :0  收藏:0  打赏:0  评论:0
    本篇博文笔记于 2021-12-19 23:47:07 发布。
推荐条件 阅读量突破三千
(更多热博,请点击蓝色文字跳转翻阅)

回页首


老齐漫画头像

精品文章:

  • 好文力荐:齐伟书稿 《python 完全自学教程》 Free连载(已完稿并集结成书,还有PDF版本百度网盘永久分享,点击跳转免费?下载。)
  • OPP三大特性:封装中的property
  • 通过内置对象理解python'
  • 正则表达式
  • python中“*”的作用
  • Python 完全自学手册
  • 海象运算符
  • Python中的 `!=`与`is not`不同
  • 学习编程的正确方法

来源:老齐教室


回页首

◆ Python 入门指南【Python 3.6.3】


好文力荐:

  • 全栈领域优质创作者——[寒佬](还是国内某高校学生)博文“非技术文—关于英语和如何正确的提问”,“英语”和“会提问”是编程学习的两大利器。
  • 【8大编程语言的适用领域】先别着急选语言学编程,先看它们能干嘛
  • 靠谱程序员的好习惯
  • 大佬帅地的优质好文“函数功能、结束条件、函数等价式”三大要素让您认清递归

CSDN实用技巧博文:

  • 8个好用到爆的Python实用技巧
  • python忽略警告
  • Python代码编写规范
  • Python的docstring规范(说明文档的规范写法)

注:本文转载自blog.csdn.net的梦幻精灵_cq的文章"https://blog.csdn.net/m0_57158496/article/details/131794018"。版权归原作者所有,此博客不拥有其著作权,亦不承担相应法律责任。如有侵权,请联系我们删除。
复制链接
复制链接
相关推荐
发表评论
登录后才能发表评论和回复 注册

/ 登录

评论记录:

未查询到任何数据!
回复评论:

分类栏目

后端 (14832) 前端 (14280) 移动开发 (3760) 编程语言 (3851) Java (3904) Python (3298) 人工智能 (10119) AIGC (2810) 大数据 (3499) 数据库 (3945) 数据结构与算法 (3757) 音视频 (2669) 云原生 (3145) 云平台 (2965) 前沿技术 (2993) 开源 (2160) 小程序 (2860) 运维 (2533) 服务器 (2698) 操作系统 (2325) 硬件开发 (2491) 嵌入式 (2955) 微软技术 (2769) 软件工程 (2056) 测试 (2865) 网络空间安全 (2948) 网络与通信 (2797) 用户体验设计 (2592) 学习和成长 (2593) 搜索 (2744) 开发工具 (7108) 游戏 (2829) HarmonyOS (2935) 区块链 (2782) 数学 (3112) 3C硬件 (2759) 资讯 (2909) Android (4709) iOS (1850) 代码人生 (3043) 阅读 (2841)

热门文章

101
推荐
关于我们 隐私政策 免责声明 联系我们
Copyright © 2020-2025 蚁人论坛 (iYenn.com) All Rights Reserved.
Scroll to Top