Python pyfilesystem可以组合模式吗?
我想将pyfilesystem与模式结合使用。例如,我想在FTP服务器上打开一个tar文件,然后我将执行FTP+tar://user:password@主机:port/path/file.tar.gz。不是这样,但是TarFS构造函数接受打开的文件。因此,沿着这些思路应该可以做到:Python pyfilesystem可以组合模式吗?,python,pyfilesystem,Python,Pyfilesystem,我想将pyfilesystem与模式结合使用。例如,我想在FTP服务器上打开一个tar文件,然后我将执行FTP+tar://user:password@主机:port/path/file.tar.gz。不是这样,但是TarFS构造函数接受打开的文件。因此,沿着这些思路应该可以做到: with open_fs("ftp://user:password@host:port/") as ftp_fs: with ftp_fs.open("path/file.tar
with open_fs("ftp://user:password@host:port/") as ftp_fs:
with ftp_fs.open("path/file.tar.gz") as tar_file:
my_tar = TarFS(tar_file)
my_tar.tree()
我的结局是这样的:
@contextmanager
def open_url(url:str,
模式:str=“r”,
create:bool=False,
缓冲:int=-1,
编码:可选[str]=None,
错误:可选[str]=无,
换行:str=“”,
**选项:任何,
)->typing.IO:
writeable=如果模式中的“w”为False,则为True
目录url,文件名=os.path.split(url)
将open_fs(dir_url,可写,创建)作为fs_:
打开(文件名、模式、缓冲、编码、错误、换行符、,
**选项)作为文件类型:
屈服文件_