3

我是 python 新手,只是想知道 python 执行以下操作的最佳方法是什么:

file='/var/log/test.txt'
==action==

在==action==之后,我想获取路径和文件,如下所示:

path='/var/log'
file_name='test.txt'

我不是问如何做到这一点,我问的是使用最少代码行的最有效方法。

=编辑=

如果我的 file='test.txt' 而不是 file='/var/log/test.txt' 怎么办。我更可能期望:

path='.'
path='test.txt'

以外

path=''
file_name='test.txt'

那有什么秘诀呢?

4

2 回答 2

11
file = '/var/log/test.txt'
path, file_name = os.path.split(file)

产量:

path
'/var/log'

file_name
'test.txt'

要使用os.path.split()需要import os. 我不得不认为 Python 库尽可能高效。

要响应更新/编辑,如果未指定路径并且您需要.for 路径,请添加:

if not path: path = '.'

IE,

file = 'test.txt'
path, file_name = os.path.split(file)
if not path: path = '.'

给出:

path
'.'

file_name
'test.txt'
于 2012-05-30T12:07:21.903 回答
7

你应该看看的文档os.path有一个split功能,例如:

path, file_name = os.path.split('/var/log/test/txt')
于 2012-05-30T12:07:24.137 回答