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 ...
随机推荐
- vuex知识要点梳理
该内容为个人总结,请勿喷. 欢迎各位大神前来指点.
- 字典树基础进阶全掌握(Trie树、01字典树、后缀自动机、AC自动机)
字典树 概述 字典树,又称单词查找树,Trie树,是一种树形结构,是一种哈希树的变种.典型应用是用于统计,排序和保存大量的字符串(但不仅限于字符串),所以经常被搜索引擎系统用于文本词频统计.它 ...
- B 基因改造
时间限制 : - MS 空间限制 : - KB 问题描述 "人类智慧的冰峰,只有萌萌哒的我寂寞地守望."--TBTB正走在改造人类智慧基因的路上.TB发现人类智慧基因一点也不 ...
- SQL Server中STATISTICS IO物理读和逻辑读的误区
SQL Server中STATISTICS IO物理读和逻辑读的误区 大家知道,SQL Server中可以利用下面命令查看某个语句读写IO的情况 SET STATISTICS IO ON 那么这个命令 ...
- python:用cv2简单实现图片的水平、垂直翻转
原图片的本地地址:D:/360Downloads/test.jpg 代码实现: # 导入cv2模块 import cv2 # 给出本地图片的地址 img_dir="D:/360Downloa ...
- react axios 跨域访问一个或多个域名
1.react + axios 跨域访问一个域名 配置非常简单,只需要在当前的 package.json 文件里面配置: "proxy":"http://iot-demo ...
- DHCP完整过程详解及Wireshark抓包分析
DHCP,Dynamic Host Configuration Protocol,动态主机配置协议,简单来说就是主机获取IP地址的过程,属于应用层协议. DHCP采用UDP的68(客户端)和67(服务 ...
- es--es分词的一些分析技巧
查看某个字段的分词结果 POST /index/tyhpe/id/_termvectors?fields=fields_name 例如:http://localhost:9200/prod_membe ...
- 计算机网络篇,基于UDP、TCP的应用层及其端口
- Java研发技术学习路线
Java研发技术成长路线 作为一名Java研发者,深感Java技术的学习是一个漫长过程,从一名Java菜鸟开始,加之持之以恒的耐心和脚踏实地的精神,不间断理论的学习,不停止技术实践,终成为一名技术佼佼 ...