L_Richo 2021-05-04 14:00 采纳率: 100%
浏览 25
已采纳

用Python怎么将这个记事本前八行按以下规则排序啊?

#记事本(input.txt)内容如下:

  "The Canterbury Tales" by Chaucer, G.
 "The Canterbury Taless" by Chaucer, B.
 "Algorithms" by Sedgewick, R.
 "The C Programming Language" by Kernighan, B. and Ritchiee, D.
 "The C Programming Languag" by Kernighan, B. and Ritchiee, D.
 "The D Programming Language" by Kernighan, B. and Ritchiee, D.
 "A House for Mr. Biswas" by Naipaul, V.S.
 "A Congo Diary" by Naipaul, V.S.
 END

#说明:引号内是书名,by后面是作者名

#规则:作者名优先排序,作者名相同按书名排序

------谢谢各位大佬-------
 

  • 写回答

4条回答 默认 最新

  • 关注
    import re
    
    def fre(s):
        r = re.search(r'"(.+?)" by (.+)',s.strip())
        book = r.group(1)
        name = r.group(2)
        return (name,book)
    
    with open(r'1.txt','r',encoding='utf-8') as f:
        li = f.readlines()
        li.sort(key=fre)
        print(*li,sep='')
    

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 微信小程序协议怎么写
  • ¥15 c语言怎么用printf(“\b \b”)与getch()实现黑框里写入与删除?
  • ¥20 怎么用dlib库的算法识别小麦病虫害
  • ¥15 华为ensp模拟器中S5700交换机在配置过程中老是反复重启
  • ¥15 java写代码遇到问题,求帮助
  • ¥15 uniapp uview http 如何实现统一的请求异常信息提示?
  • ¥15 有了解d3和topogram.js库的吗?有偿请教
  • ¥100 任意维数的K均值聚类
  • ¥15 stamps做sbas-insar,时序沉降图怎么画
  • ¥15 买了个传感器,根据商家发的代码和步骤使用但是代码报错了不会改,有没有人可以看看