Python创建临时文件与临时目录
import os
from tempfile import TemporaryFile
f = TemporaryFile('w+t', encoding='utf-8')
# 创建临时文件
f.write('数据1')
f.write('数据2')
# 写数据
f.seek(0)
print(f.read())
# 读取输出
f.close()
# 关闭并删除
import os
from tempfile import TemporaryFile
f = TemporaryFile('w+t', encoding='utf-8')
# 创建临时文件
f.write('数据1')
f.write('数据2')
# 写数据
f.seek(0)
print(f.read())
# 读取输出
f.close()
# 关闭并删除
import win32ui
dlg = win32ui.CreateFileDialog(1)
dlg.SetOFNInitialDir("默认打开路径")
dlg.DoModal()
path = dlg.GetPathName()
# 获取选择文件的绝对路径
如果报错,需要安装pywin32
pip install pywin32
import win32com.client
def check_process(process_name):
WMI = win32com.client.GetObject('winmgmts:')
processCodeCov = WMI.ExecQuery('select * from Win32_Process where Name="%s"' % process_name)
if len(processCodeCov) > 0:
return True
else:
return False
import os
os.system("指令")
# 显示窗口执行cmd指令
os.popen("指令")
# 隐藏窗口执行cmd指令
压缩
import subprocess
addzip = subprocess.Popen('7z.exe a -t7z "压缩文件.7z" "要打包的文件" -r -p密码 -mx=9 -m0=LZMA2 -ms=10m -mf=on -mhc=on -mmt=on')
# 压缩文件为7z格式,使用最高压缩强度,开启多线程
addzip.wait()
# 等待进程结束,防止压缩未完成就继续执行之后的命令
解压
import subprocess
unzip = subprocess.Popen('7z.exe x "压缩文件.7z" -o"输出路径" -aoa -p密码')
# 解压缩文件
unzip.wait()
# 等待进程结束,防止压缩未完成就继续执行之后的命令
import os
os.chdir(os.path.dirname(os.path.realpath(sys.argv[0])) + '\\Test')
# 将工作路径切换为当前路径下的Test目录
import zipfile
zipfile.is_zipfile('压缩文件')
# 检查文件是否是zip压缩包
file = zipfile.ZipFile('压缩文件')
# 打开压缩文件
file = zfile.extractall(path='解压路径',pwd=str("密码").encode("ascii"))
# 解压文件,zipfile只支持传入byte类型密码,不能直接传入字符串
newZip = zipfile.ZipFile('压缩文件名', 'w')
# 打开/创建文件,w指以写入方式打开
newZip.write('要写入的文件', compress_type=zipfile.ZIP_DEFLATED)
# 写入文件
newZip.close()
# 关闭文件
使用pyinstaller即可,首先安装pyinstaller
pip install pyinstaller
打开Python文件所在目录,执行以下命令,进行打包
pyinstaller test.py
# 打包"test.py"
# 可使用参数有:
# -i Img 指定文件图标
# -F 打包为单个文件 | -D 打包为一个目录
# -w 隐藏控制台窗口 | -c 显示控制台窗口
# -d 打包Debug版本 | -a 不包含Unicode字符集支持
# -o Dir 指定spec文件的生成目录 | -n Name 指定项目名与生成spec文件名,默认为第一个脚本的文件名