PAD456 2022-05-29 10:49 采纳率: 100%
浏览 41
已结题

python字典嵌套列表、压平

问题遇到的现象和发生背景

将该嵌套列表中的每一行中的3个数字升序排序,并输出均排序后的嵌套列表。
将排序后的嵌套列表转化成一个非嵌套列表(俗称压平)
这个就差输出均排序后的嵌套列表和压平,这个怎么写?

问题相关代码,请勿粘贴截图

A= [ [100,20,30], [110,520,785], [520,114,333]]
for item in A:
print(sorted(item))

运行结果及报错内容

img

我的解答思路和尝试过的方法
我想要达到的结果
  • 写回答

2条回答 默认 最新

  • Hann Yang 全栈领域优质创作者 2022-05-29 11:01
    关注
    A = [[100, 20, 30], [110, 520, 785], [520, 114, 333]]
    
    A = [sorted(a) for a in A]
    
    print(A)
    
    B = sum(A, [])
    
    print(B)
    

    分析过程:

    >>> A
    [[100, 20, 30], [110, 520, 785], [520, 114, 333]]
    >>> for item in A:
        print(sorted(item))
    
        
    [20, 30, 100]
    [110, 520, 785]
    [114, 333, 520]
    >>> A 
    [[100, 20, 30], [110, 520, 785], [520, 114, 333]]
    >>> A = [sorted(a) for a in A]  #这样才排序了,你的代码只是输出时排序,A并没有变动
    >>> A
    [[20, 30, 100], [110, 520, 785], [114, 333, 520]]
    >>> B = sum(A,[]) #这是“压平”最简洁的方法!
    >>> B
    [20, 30, 100, 110, 520, 785, 114, 333, 520]
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
  • ·星辰大海 2022-05-29 10:57
    关注
    
    A= [ [100,20,30], [110,520,785], [520,114,333]]
    B=sorted(A[0])
    for item in A[1:]:
        B.extend(sorted(item))
    print(B)
    print([sorted(i) for i in A])
    
    
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 5月30日
  • 已采纳回答 5月30日
  • 创建了问题 5月29日

悬赏问题

  • ¥50 74LS系列 74LS00 74LS04设计一个RS485电路(关键词-差分)
  • ¥30 各位help写一下代码
  • ¥15 在运行SDEdit模型下载不了
  • ¥15 求51控制l298n驱动的小车中超声波避障怎么写
  • ¥15 电脑连上WIFI却用不了
  • ¥30 MATLAB在RLC电路的固有响应和阶跃响应GUI仿真报告
  • ¥15 hyper-v出现的问题
  • ¥15 有能用的可加酬金,求可以批量下载懒人听书的软件,能登录自己帐号的。
  • ¥100 高博一起做RGB-D SLAM(5)VO无法出visualisation问题
  • ¥15 使用matlab进行手眼标定的仿真验证,得到齐次矩阵与opencv相差较大