情景:文件名中包含学号和用户名,其中用户名在前学好在后,学号为2位,如harry33.txt、natasha12.txt。

要求:将多个文件名中的用户名与学号分开并保存到excle中。

代码部分:

import os

# 创建一个立标,用来保存去掉扩展名后的文件名
filename = [] # os.walk:遍历某目录下所有的文件和文件夹
for a,b,files in os.walk('test'):
# 如果文件存在,保存开始到倒数第四位的字符到filename列表里
if files:
# 扩展名名为3个字母+之前的一个点(.),一共是4个字符,截取到倒数第四个字符为止就获取了文件名
filename.append([file[:-] for file in files]) #print(os.listdir('test')) 查看完整文件内容
#print(filename) 查看去掉扩展名后到内容 # 创建用于保存文件名的excel表格名称
fname = 'testexam'
# 表格计数器
i = # 循环filename,以此读取不同的文件名
for files in filename:
# 生成带后缀的excel表文件
f = open(fname+str(i)+'.xls','w')
# 将读取到的文件名写入到新生成的excel文件里
for name in files:
#文件名倒数两位是数字号码,单独提取出来放在excel的前边;文件开始到倒数第2位是姓名信息,提取出来放到后边
f.write(name[-:]+'\t'+name[:-]+'\n')
f.close()
i+=
print('生成成功!')

执行结果:

最新文章

  1. C#中常用的转义字符及@符号的一些作用
  2. asp.net web api集成微信服务(使用Senparc微信SDK)
  3. mysql 备份软件 Xtrabackup 的 xtrabackup_binlog_pos_innodb和xtrabackup_binlog_info 文件区别
  4. appium+java+junit demo运行
  5. R Graphics Cookbook 第3章 – Bar Graphs
  6. ORACLE TM锁
  7. [BZOJ 1086] [SCOI2005] 王室联邦 【树分块】
  8. hdu3986Harry Potter and the Final Battle
  9. #ifndef 和 #endif
  10. JDK自带VM分析工具jps,jstat,jmap,jconsole
  11. 带着萌新看springboot源码07
  12. 请给Array本地对象增加一个原型方法,它用于删除数组条目中重复的条目(可能有多个),返回值是一个包含被删除的重复条目的新数组。
  13. python之路--递归, 二分法
  14. 最棒的 JavaScript 学习指南(2018版)
  15. http://www.360doc.com/userhome.aspx?userid=5054188&cid=235
  16. 初见《构建之法》orz……
  17. Shell教程 之第一个shell脚本
  18. laravel 和 thinkphp 条件查询的区别
  19. navicat 快速复制表所有字段
  20. 国外大神说:在编程中使用If语句的潜在危险

热门文章

  1. Flutter常用组件(Widget)解析-Scaffold
  2. Linux文本处理三剑客之grep
  3. 从字符集发展史看Unicode和UTF-8的区别
  4. 在webpack中使用postcss之插件包precss
  5. loj#2665. 「NOI2013」树的计数
  6. BZOJ.2756.[SCOI2012]奇怪的游戏(二分 黑白染色 最大流ISAP)
  7. [Agc005D]K Perm Counting
  8. Shiro笔记(三)授权
  9. Spark MLlib 之 aggregate和treeAggregate从原理到应用
  10. [java]struts2入门