“能想到,就能省出时间” 这是我本文主要表达的目的,不是程序。程序谁都能写。人生苦短,我XXXX

其实我也是突发奇想,起因是毕设的参考文献都是英文,学校的指导规范要求参考文献必须以第一作者的首字母排序。e.g.

[1] Alice ...

[2] Bob ...

[3] Charlie ...

Copyright © https://zhuanlan.zhihu.com/ysimonguo-research. All Rights Reserved

然而下里巴人的我,当时并没有想到用 Endnote(甚至还是保研北大的生信大佬后来提醒我我才知道的 ,因为我当时只是知道有个叫 Endnote 的东西,但根本不知道怎么用)。

那么怎么才能把四十多条参考文献按照首字母排序呢?一条条拿眼睛对?这绝对不符合我的风格,为什么呢,前几天,我还发了个朋友圈,在这里转载一下:

毕设要求的文献格式很迷,目测是 GB/T 7714,然而我所有的文献都是之前按 之前投 BMC 时魔改的。

如果一个一个复制文献标题去百度学术搜然后再手动导出符合要求的文献格式显然不符合我的风格,

更别提正文中的引用也要相应由我之前的“[xxx]”改为学校要求的“(xxx et al. 2016)”。

Copyright © https://zhuanlan.zhihu.com/ysimonguo-research. All Rights Reserved

所以直接开元素审查,基本摸清了百度学术的页面结构。

然后开 postman 稍微测试了下,摸清了 API。

反正最后 beautifulsoup 加上写了几个正则,把 request URL一拼接,得到的大致效果就是输入论文标题

文件如图1,程序输出如图2的符合标准的带编号的文献格式(第一行)

以及能在正文中直接使用的引用格式(第二行)。图1 输入图2 输出,注:图中 et al 应为斜体

具体这块的实现,暂时按下不表,我的目的是说明自己很懒,能程序实现的绝不手动。

而今天的主角是这部分工作做完几天后的我才发现需要做的文献排序问题。

其实说穿了,就一行sort代码。读文件加 3 行,写文件加 3 行,6 行搞定。但是,省出来的可是实打实的时间。

具体实现

输入:文本文件 ref_sort,每一行为一字符串

输出:文本文件 ref_sorted,每一行为排序好后的一个字符串

代码:

# Copyright © https://zhuanlan.zhihu.com/ysimonguo-research. All Rights Reserved

f=open('ref_sort', 'r')

refList=f.readlines()

f.close()

# print(sorted(refList))

f=open('ref_sorted','w')

f.writelines(sorted(refList))

f.close()

输出:

Alice...

Bob...

Charlie...

增加需求,要求输出带有参考文献顺序标号

代码:

# Copyright © https://zhuanlan.zhihu.com/ysimonguo-research. All Rights Reserved

f=open('ref_sort', 'r')

refList=f.readlines()

f.close()

j=0

f=open('ref_sorted','w')

for i in sorted(refList):

j=j+1

print([j], i)

ref_line='['+str(j)+']'+i

f.writelines(ref_line)

f.close()

输出:

[1] Alice...

[2] Bob...

[3] Charlie...

python的实验报告参考文献_用 Python 为毕业论文参考文献排序相关推荐

  1. python人脸识别实验报告总结_《Python人脸识别:从入门到工程实践》 ——3.7 本章小结...

    3.7 本章小结 在本章中,我们接触到了计算机视觉的一些基本概念,并介绍了两种常用的颜色模型,分别是RGB颜色模型和HSV颜色模型.其中,RGB颜色模型的空间结构是立方体结构,而HSV颜色模型的空间结 ...

  2. python程序设计实验指导书_《Python程序设计》实验指导书.pdf

    Python < 程序设计>实验指导书 董付国 <Python 程序设计 (第2 版)> <Python 程序设计基础 (第2 版)> <Python 可以这 ...

  3. python的实验报告大一心理_python的期末实验报告

    青岛工学院 实验报告 <Python 语言基础>实验报告 实验室: 实验题目 年... python大作业实验报告.pptx_计算机软件及应用_IT/计算机_专业资料.... 温州大学瓯江 ...

  4. python实验报告及源代码-python满分实验报告:红心大战源代码源码程序

    python满分实验报告:红心大战源代码/ python满分实验报告:红心大战源代码/python_红心大战游戏_满分原创作业/ python满分实验报告:红心大战源代码/python_红心大战游戏_ ...

  5. python上机实验报告读取文件_Python程序设计实验报告:实验八 文件

    安徽工程大学 Python程序设计 实验报告 班级 物流192姓名陶俊 学号3190505235 成绩 日期 2020.6.3 指导老师修宇 实验八 文件 [实验目的] 掌握读写文本文件或 CSV 文 ...

  6. python上机实验报告读取文件_Python程序设计实验报告八 : 文件

    安徽工程大学 Python程序设计 实验报告 班级 物流192 姓名凌剑涛 学号 3190505233成绩 日期2020.6.3 指导老师 修宇 实验八 文件 [实验目的] 掌握读写文本文件或CSV文 ...

  7. 基于python物流管理系统毕业设计-Python程序设计实验报告一 :熟悉IDLE和在线编程平台...

    Python程序设计实验报告 班级 物流192 姓名 张羽 学号 3190505221 成绩 日期 3月5日 指导老师 修宇 实验名称 实验一 熟悉IDLE和在线编程平台 实验目的 1.掌握pytho ...

  8. 基于python物流管理系统毕业设计-Python程序设计实验报告二

    安徽工程大学 Python 程序设计 实验报告 班级: 物流192 姓名:刘晨晨 学号:3190505214 日期: 3.21 指导教师:修宇 实验二 顺序结构程序设计(验证性实验) [实验目的] ( ...

  9. 基于python物流管理系统毕业设计-Python程序设计实验报告八:文件

    安徽工程大学 Python程序设计 实验报告 .班级 物流192 姓名张羽学号3190505221成绩 日期2020.6.3指导老师修宇 实验八 文件 [实验目的] 掌握读写文本文件或 CSV 文件, ...

  10. python综合实验报告_Python程序设计实验报告五:综合运用三种基本结构进行程序设计(综合性实验)...

    安徽工程大学 Python程序设计 实验报告 班级 物流191 姓名姚彩琴学号3190505129 成绩 日期 2020.4.22 指导老师修宇 [实验名称]综合运用三种基本结构进行程序设计(综合性实 ...

最新文章

  1. thymeleaf加载不了js引用_web前端教程之js中的模块化一
  2. Martini源码剖析
  3. android小闹钟程序,Android实现闹钟小程序.pdf
  4. mysql 更改root密码及 主机_设置更改root密码(远程,本地)、连接mysql、mysql常用命令...
  5. fastboot no permission
  6. 计算机原理中阶符是指,计算机原理复习题1
  7. 关于徒手脱壳的几种方法
  8. linux上mysql定时备份数据库数据_Linux下如何实现MySQL数据库每天定时自动备份
  9. [1.1]用WebService返回歌曲的曲目信息.借鉴[星集工作室 张麟 Dephi版]
  10. 慕课网 机器学习任务 笔记
  11. Eclipse 2021-09最新版安装图文教程(详细包会)
  12. 利用按键精灵实现QQ群发和微信群发
  13. 2019-成长的一年
  14. IDEA 前台静态文件发布不即时生效问题解决
  15. iMazing怎么恢复备份?iMazing恢复备份教程分享
  16. 【《2021机器学习-李宏毅》学习笔记】
  17. 女博士日记软件测试,一个女博士的日记
  18. 用设计模式解决电商项目的更新库存业务
  19. 移动网络运营商显示无服务器,无线路由器忽然拨不上号,显示网络运营商远端无响应怎么处理...
  20. NPOI创建DOCX常用操作

热门文章

  1. 20. 项目实战之移动端的店铺切换
  2. 启中教育:新手开网店怎么做好准备工作
  3. 火云开发课堂 - 《使用Cocos2d-x 开发3D游戏》系列 第五节:模型的加载与渲染
  4. Shell之${BASH_REMATCH}
  5. 菲涅尔公式实现边缘光效果
  6. 因子择时的个标尺:因子动量因子离散度与因子挤
  7. 情人节,那就给她做一个网站吧!
  8. python提取首字符 判断火车票座位_Python实现自动查取火车票余量,并发送邮件...
  9. 面试 Linux 运维工作至少需要知道哪些知识?
  10. DMVPN Note+Lab