我使用这个模块:https : //github.com/jaraco/path.py
我有一个需要字符串的函数。我没有找到任何可以将总路径作为字符串提供给我的函数。
from path import *
import paramiko
if __name__ == "__main__":
hostname = 'localhost'
username = '**'
password = '**'
port = 22
transport = paramiko.Transport((hostname, port))
transport.connect(username = username, password = password)
sftp = paramiko.SFTPClient.from_transport(transport)
path = path('~/folder/')
filename = path.joinpath('foo')
f = sftp.open(filename, 'r') #open needs a string
Run Code Online (Sandbox Code Playgroud)
你有想法吗 ?
先感谢您
mun*_*unk 15
filename有一个名为 abspath 的方法,它返回一个带有绝对路径的对象。您可以将其转换为字符串。
...
folder_path = path('~/folder/')
filename = path.joinpath('foo')
f = sftp.open(str(filename), 'r')
Run Code Online (Sandbox Code Playgroud)
from pathlib import Path
path = Path('~/folder/foo')
absolute_path = path.absolute().as_posix()
Run Code Online (Sandbox Code Playgroud)
import os
absolute_path = os.path.abspath('~/folder/foo').as_posix()
Run Code Online (Sandbox Code Playgroud)