我是python的新手,只是想知道python执行以下操作的最佳方法是什么:
file='/var/log/test.txt'
==action==
Run Code Online (Sandbox Code Playgroud)
在== action ==之后,我想得到的路径和文件分开如下:
path='/var/log'
file_name='test.txt'
Run Code Online (Sandbox Code Playgroud)
我不是问如何做到这一点,我问最有效的方法是使用最少的代码行来做到这一点.
= EDIT =
如果我的文件='test.txt'而不是file ='/ var/log/test.txt'怎么办?我更可能期望:
path='.'
path='test.txt'
Run Code Online (Sandbox Code Playgroud)
以外
path=''
file_name='test.txt'
Run Code Online (Sandbox Code Playgroud)
这是什么意思呢?
Lev*_*von 11
file = '/var/log/test.txt'
path, file_name = os.path.split(file)
Run Code Online (Sandbox Code Playgroud)
收益率:
path
'/var/log'
file_name
'test.txt'
Run Code Online (Sandbox Code Playgroud)
要使用os.path.split()需要import os.我不得不认为Python库尽可能高效.
要响应更新/编辑,如果未指定路径并且您想要.for路径,请添加:
if not path: path = '.'
Run Code Online (Sandbox Code Playgroud)
也就是说,
file = 'test.txt'
path, file_name = os.path.split(file)
if not path: path = '.'
Run Code Online (Sandbox Code Playgroud)
得到:
path
'.'
file_name
'test.txt'
Run Code Online (Sandbox Code Playgroud)
你应该看看文件的os.path,有一个split功能,例如:
path, file_name = os.path.split('/var/log/test/txt')
Run Code Online (Sandbox Code Playgroud)