python读取txt批量创建文件
python读取txt批量创建文件
前几天有个小问题, 需要批量建立很多文件夹,, 所以手动写了个小的脚本, 后续可以直接使用
读取目录文件, 然后直接创建相应的文件
基本思路:
- 就是读取用户输入参数, 获取所在路径以及所要命名的后缀
- 获取txt所在路径, 得到同级目录
- 读取txt 的每一行 并计数得到数字
- 根据同级目录拼接路径, 创建文件(如果存在不覆盖)
- 输出结果
代码demo
<script src="https://gist.github.com/SChen1024/86a70fb31d2ecbb4092c6c70b1270352.js"></script>
#!/usr/bin/python
# -*- coding: UTF-8 -*-
import sys
import os
# 输入 指定 txt 文件路径, 创建文件的后缀 txt js
# 读取指定文件的txt 文档
# 在 txt 的同级目录下面建立相应的文件
def ReadArg():
"""
通过sys模块来识别参数demo, http://blog.csdn.net/ouyang_peng/
"""
print('参数个数为:', len(sys.argv), '个参数。')
print('参数列表:', str(sys.argv))
print('脚本名为:', sys.argv[0])
for i in range(1, len(sys.argv)):
print('参数 %s 为:%s' % (i, sys.argv[i]))
return sys.argv
def ReadTxtLists(file):
'''
读物 txt 文件中的文件列表
'''
res =[]
with open(file,'r') as f:
for line in f:
line.strip('\n')
line = ''.join(line.split())
res.append(line)
return res
def CreateFile(file):
with open(file, 'a'):
os.utime(file,None)
def main():
argv = ReadArg()
suffix = "txt" # 默认后缀
# 只有两个参数表示没有 给后缀名
if(len(argv) >= 3):
suffix = argv[2]
file_name= argv[1]
# 读取得到所有的文件名
files = ReadTxtLists(file_name)
(filepath, filename) = os.path.split(file_name)
# 计数 生成拼接文件
# 最终创建文件 如果存在 不更新文件
cnt = 0
for file in files:
cnt += 1
file_str = filepath + "\\" + str(cnt).zfill(2) + "_" + file + "." + suffix
CreateFile(file_str)
print(file_str+'\n')
if __name__ == "__main__":
main()
python读取txt批量创建文件的更多相关文章
- python 批量创建文件及文件夹(文件夹里再创文件)
python 批量创建文件及文件夹(文件夹里再创文件)思路:文件建到哪>文件名字叫啥>创建文件夹>去新建的文件下>新建文件>给文件里边写东西>写个反馈给控制台> ...
- Python读取txt文件
Python读取txt文件,有两种方式: (1)逐行读取 data=open("data.txt") line=data.readline() while line: print ...
- python读取txt、csv和excel文件
一.python读取txt文件:(思路:先打开文件,读取文件,最后用for循环输出内容) fp = open('test.txt','r') lines = fp.readlines() fp.clo ...
- 使用Java中File类批量创建文件和批量修改文件名
批量创建文件 int cont = 1; String s = "E:\\学习资料\\Java笔记-"; while(cont<100){ File f = new File ...
- mkdir:批量创建文件夹
问题:mkdir dir[0-9]创建文件夹时,并没有如预期创建dir0~dir9这几个文件夹,而是创建了dir[0-9]这一个文件夹. 网上看了些相关资料,发现以前对[0-9]的理解不够透彻: &q ...
- shell批量创建文件及改名
批量创建文件及改名企业面试题2:使用for循环在/usr/sunzy目录下通过随机小写10个字母,批量创建10个html文件. #!/bin/bash Path=/usr/sunzy [ -d $Pa ...
- Python 通过文件名批量移动文件
Python 通过文件名批量移动文件 https://stackoverflow.com/questions/28913088/moving-files-with-wildcards-in-pytho ...
- web端自动化——Python读取txt文件、csv文件、xml文件
1.读取txt文件 txt文件是我们经常操作的文件类型,Python提供了以下几种读取txt文件的方式. 1)read(): 读取整个文件. 2)readline(): 读取一行数据. 3)readl ...
- python读取txt文件时报错UnicodeDecodeError: 'gbk' codec can't decode byte 0x8e in position 8: illegal multibyte sequence
python读取文件时报错UnicodeDecodeError: 'gbk' codec can't decode byte 0x8e in position 8: illegal multibyte ...
随机推荐
- D. Little Artem and Dance(带环模拟 + 规律)
D. Little Artem and Dance Little Artem is fond of dancing. Most of all dances Artem likes rueda - Cu ...
- C语言中static extern的使用
10:30:22 2019-08-20 基础不牢 瞬间爆炸 参考资料:https://blog.csdn.net/ts_54eagle/article/details/4418627 https:// ...
- Netty 中的 handler 和 ChannelPipeline 分析
上一节我们讲了 Netty 的启动流程,从启动流程入手分析了 Reactor 模型的第一步:channel 如何绑定 Selector.然后讲到了 EventLoop 在启动的时候发挥了什么作用.整个 ...
- CF633(div.2)C. Powered Addition
题目描述 http://codeforces.com/contest/1339/problem/C 给定一个长度为 \(n\) 的无序数组,你可以在第 \(x\) 秒进行一次下面的操作. 从数组选取任 ...
- Java8 新特性 Lambda & Stream API
目录 Lambda & Stream API 1 Lambda表达式 1.1 为什么要使用lambda表达式 1.2 Lambda表达式语法 1.3 函数式接口 1.3.1 什么是函数式接口? ...
- 【php】COOKIE和SESSION
一. COOKIE(小甜点,小饼干) a) 生活中的实例: i. 大保健的会员卡(记录你的姓名.性别.ID号码.手机号……) ii. 超市的会员卡(记录你的姓名,性别,会员积分) b) PHP当中的实 ...
- 在MAC上如何使用SQL Server
由于小编在这学期要学习数据库原理这门课程,需要用到SQL Server,然而大家都知道SQL Server目前是只能在Windows上使用,我们在mac电脑上如何使用呢?我们可以借助目前比较火的Doc ...
- 力软敏捷框架集成布局插件(ce-layout)
最近用力软的框架觉得框架在布局这块不是很友好特别是对像css不是很好的程序员来说,大部分大家都是后端程序员. 所以决定集成一个和力软敏捷框架风格比较一致的布局插件进来 插件ce-layout ,下载地 ...
- SQL基础系列(4)-性能优化建议
10.1 连接查询表的顺序问题 SQLSERVER的解析器按照从右到左的顺序处理FROM子句中的表名,因此FROM子句中写在最后的表(基础表driving table)将被最先处理,在FROM子句中包 ...
- cgdb使用方法
cgdb --args [exe_name] [arg1] [arg2] [arg3] [...] 进入代码窗口 按ESC键 进入调试窗口 按i键 调试命令 r 运行 n 单步执行(不进入函数) s ...