zip压缩后解压的问题
import zipfilefrom pathlib import Path
p = Path.cwd().parent
ez = zipfile.ZipFile(p/'ttt.zip')
print(ez.namelist())
ez.extractall()
ez.close()
这个程序就是查看压缩包里的文件,以及如何解压的。
但是解压的文件在哪?我怎么找不到了。 在工作目录或者压缩包所在位置? qiuyouzhi 发表于 2021-7-4 14:25
在工作目录或者压缩包所在位置?
我找了,啥也没有,目录也没,压缩包所在文件夹也没有 搜索一下啊,看看电脑里面这个文件在哪
或者是你的路径啥的有问题,检查一下
有时候路径有误却不会报错的{:10_272:} # 创建zip文件(写入)
with ZipFile("myZip.zip", 'w') as zf:
# 将 单个文件 压缩(写入)到zip文件对象中
zf.write('foo.txt')
zf.write('XXX.avi')
# 将 文件夹 写入
for dirpath, dirnames, files in os.walk(".\\A"):
zf.write(dirpath) # 先写入(创建) 此时walk到的 文件夹
for f in files:
zf.write(os.path.join(dirpath, f))# 写入 此时walk到的 文件
# 压缩文件夹的另一种方法(归档)
# import shutil
# shutil.make_archive(output_filename, 'zip', dir_name)
# 读取zip文件包含哪些文件(读取)
with ZipFile("myZip.zip", 'r') as zf:
print(zf.filelist) # 文件对象列表
zf.printdir() # 打印文件清单
# 解压
# with ZipFile("testZip.zip", 'r') as zf:
# zf.extractall()# 默认解压到当前工作目录
with ZipFile("myZip.zip", 'r') as zf:
zf.extractall('.\\extra_here')# 指定解压到哪 Daniel_Zhang 发表于 2021-7-5 00:28
搜索一下啊,看看电脑里面这个文件在哪
或者是你的路径啥的有问题,检查一下
我搜索了,也查到了。在python安装路径。不过还有一个就是在C盘Recent这个文件里,可是我始终是没找到这个文件夹。很简单的一个路径,可是就是找不到这个文件。 阿奇_o 发表于 2021-7-5 03:35
谢谢 阿奇_o 发表于 2021-7-5 03:35
就是解压这个问题,我没搞明白。默认的解压路径,当前工作目录没找到解压后的文件。 江湖散人 发表于 2021-7-7 10:39
就是解压这个问题,我没搞明白。默认的解压路径,当前工作目录没找到解压后的文件。
我几乎照着你的代码,试了两遍,
一遍在IDLE默认工作目录,一遍修改了当前工作目录后再试,结果—— 都行。
真的不知道 你是怎么个“找不到”。。{:10_284:}
江湖散人 发表于 2021-7-7 10:36
我搜索了,也查到了。在python安装路径。不过还有一个就是在C盘Recent这个文件里,可是我始终是没找到这 ...
recent 应该是最近使用的意思吧
你看看最近使用,有没有这么个文件夹{:10_272:} 阿奇_o 发表于 2021-7-7 13:03
我几乎照着你的代码,试了两遍,
一遍在IDLE默认工作目录,一遍修改了当前工作目录后再试,结果—— 都 ...
当前目录是指,这个压缩包所在的吗? Daniel_Zhang 发表于 2021-7-7 14:57
recent 应该是最近使用的意思吧
你看看最近使用,有没有这么个文件夹
谢谢 本帖最后由 阿奇_o 于 2021-7-7 16:03 编辑
江湖散人 发表于 2021-7-7 15:39
当前目录是指,这个压缩包所在的吗?
OMG, 是 os.getcwd() 或 Path.cwd()打印出来是什么,那就是“当前工作目录” current working directory
变更 当前工作目录是 os.chdir("path_to_your_working_Dir")
如果zip包或其他任何文件就在当前工作目录内,可直接用 其文件名作为路径,否则,要么用 相对路径,要么用 绝对路径。
另外若你extractall()后(没报任何错),若真的找不到,请检查你的zip包里有东西吗?或zip文件是否是正常的zip压缩包。。
OK,我已经想不到 造成“找不到”的 其他的可能的技术原因,你自个折腾吧。
{:10_277:} ez.extractall()
好像是有一个path 函数
ez.extractall(path='C:\Users\Administrator\Desktop\') 阿奇_o 发表于 2021-7-7 16:01
OMG, 是 os.getcwd() 或 Path.cwd()打印出来是什么,那就是“当前工作目录” current working direct ...
找到了,pycharm运行后直接给我创建了一个新文件夹,在压缩包的上一层文件,名字和压缩包所在的文件夹非常像,就相差一个字母,奇葩的操作,害得我找了很长时间。谢谢你这么耐心的解答! qq1151985918 发表于 2021-7-7 16:25
好像是有一个path 函数
ez.extractall(path='C:%users\Administrator\Desktop\')
谢谢啊 江湖散人 发表于 2021-7-7 16:46
找到了,pycharm运行后直接给我创建了一个新文件夹,在压缩包的上一层文件,名字和压缩包所在的文件夹非 ...
那应该是你选择新建位置的时候,路径写错了?和系统对应位置的文件夹的名字有出入?
页:
[1]