社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
私信  •  关注

h4z3

h4z3 最近创建的主题
h4z3 最近回复了
4 年前
回复了 h4z3 创建的主题 » 基于另一个排序嵌套列表python对嵌套列表进行排序

单线解决方案:

list(zip(*sorted(zip(*a), key=lambda x: x[0])))

说明:

  • zip(*a) 将每个日期与其值配对
  • 然后我们根据第一个元素对它进行排序( key 是用于排序的函数, x 是否传递了一个参数-在我们的例子中是一对,并且我们使用 x[0] 得到日期)
  • 我们把它分别压缩成日期和数字
  • 并将zip对象转换为列表

结果:

>>> list(zip(*sorted(zip(*a), key=lambda x: x[0])))
[('2019-10-11', '2019-10-12', '2019-10-13', '2019-10-14'), (37, 28, 10, 5)]

编辑:我把你的问题读了一遍,改了。我以为你是按值来排序,而不是相反,哎呀。现在它是正确的(结果是一样的)。

4 年前
回复了 h4z3 创建的主题 » 在python中,只在双引号后拆分字符串

正如我在评论中所说,您可以在多个分隔符处拆分。逗号在引号和外部都有一个,但我们可以在 ", (添加了一个空格,这样我们就不必删除它;)

然后我们加上缺少的报价:

original = '"BLAX", "BLAY", "BLAZ, BLUBB", "BLAP"'
[s if s.endswith('"') else s+'"' for s in original.split('", ')]

输出: ['"BLAX"', '"BLAY"', '"BLAZ, BLUBB"', '"BLAP"']

这种方法不使用正则表达式,因此速度更快。你也不需要玩什么正则表达式适合你的情况(我一般喜欢正则表达式,但我更喜欢智能拆分和操作)。