张渊博 2021-11-15 10:55 采纳率: 84.4%
浏览 55
已结题

python 数组中不同位数的提取

a=[1,2,23,56,456,654,5678]
想自动识别数组a中数字的位数,生成这样的结果:
b1=[1,2]
b2=[23,56]
b3=[456,654]
b4=[5678]
生成这样的数组,就是一个位数归一类,两位数归一类,相同位数归一类

  • 写回答

3条回答 默认 最新

  • chuifengde 2021-11-15 12:13
    关注
    a=[1,2,23,56,456,654,5678, 8888]
    
    d = {}
    for i in a:
        d[len(str(i))] = d.get(len(str(i)), []) + [i]
    
    for k, v in d.items():
        print('b' + str(k) + ":", v)
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 11月23日
  • 已采纳回答 11月15日
  • 修改了问题 11月15日
  • 创建了问题 11月15日

悬赏问题

  • ¥40 单片机实验录制讲解视频
  • ¥15 srs-sip外部服务 webrtc支持H265格式
  • ¥15 在使用abaqus软件中,继承到assembly里的surfaces怎么使用python批量调动
  • ¥15 大一C语言期末考试,求帮助🙏🙏
  • ¥15 ch340驱动未分配COM
  • ¥15 Converting circular structure to JSON
  • ¥15 Onvif Device Manager提示“对操作"GetProfiles”的回复消息正文进行反序列化时出错”问题
  • ¥30 Hyper-v虚拟机相关问题,求解答。
  • ¥15 TSM320F2808PZA芯片 Bootloader
  • ¥45 谷歌浏览器出现开发者工具无法显示已创建的,但您可以调试已部署的代码。 状态代码 404, net::ERR HTTP RESPONSE CODE FAILURE