前几天男朋友从网上复制一段文字,全是一个字一行的,于是他打开word疯狂delete ,
几百行的最后敲成几百个字,费时又费力。
当时我教他以后可以用notepad编辑功能处理,今天摸鱼时想用代码来处理下
已知的需求是文字都是一个字一行,会有空格的情况。想法就是用replace直接处理掉。考虑到python理解的换行是’\n’和\r’,所以都需要处理一下。
#用作测试 把一段话一行行写入
data ='千山鸟飞绝,万径人踪灭 孤舟蓑笠翁,独钓寒江雪'
data = list(data)
with open ('../caogaoben/py1.txt','w+') as f1:
for i in data:
f1.write(i+'\r')#python文件换行写入
读取一行行的字把他变成一行
with open('../caogaoben/py1.txt','r+') as f1:
data=f1.read()
data = data.replace('\n', '').replace('\r', '')
f1.write(data)
print(data)
我用的是r+模式,打开文件时,指针在文件结尾,不会去删除之前的文件,方便检查。执行结果是
到这里基本功能已经实现了,现在加一个入口,他直接贴入文件路径就可以直接用了,以下是完整代码
add = input("请输入完整的路径,如 C:\\Users\\admin\\Desktop\\py1.txt:")
add=add.strip()#发现他有时候输入的时候前后可能有空格,所以优化了一下
with open(add,'a+',encoding='utf-8') as f1: #a+是写在最后,方便打开文档检查
f1.seek(0)#指针回到第一位
data=f1.read()
data = data.replace('\n', '').replace('\r', '').replace(' ','')#替换掉所有换行和空格
f1.write(data)
print(data)#打印出来直接就可以复制了,不需要再打开文件
就几行就解决啦,再在桌面给他做一个bat文件,这样他每次就只需要在我建好的文件里面输入要转换的文字,然后在bat文件里复制我写好的地址回车就行啦。
如果路径不是我预留的路径,只需要改一下地址就可以了~
如果路径不是我预留的路径,只需要改一下地址就可以了~
就此完成~ 虽然需求很简单,但是还是很有成就感啦~
-------又来更新啦------
考虑到每次他用还要去开我电脑会很麻烦,所以想到干脆打个包给他装在本地用就可以了
于是百度了下,作为测试,还是第一次打包呢~
记录一下
1.先安装一个打包的插件
pip install pyinstaller
2.在控制台输入 pyinstaller -F level\D4.py
【level\D4.py是当前路径下的地址】
执行后 ,会在dist文件夹生成一个exe文件。
即打包完成~