【发布时间】:2022-10-13 11:10:06
【问题描述】:
我需要从文件路径中提取seq_00034
file = "/home/user/workspace/data/seq_00034.pkl"
我知道实现它的两种方法:
方法.A
import os
seq_name = os.path.basename(file).split(".")[0]
或者
方法B
seq_name = file.split("/")[-1].split(".")[0]
哪个更安全/更快?
(考虑到import os的成本)
有没有更优雅的方法从给定路径中提取seq_name?
【问题讨论】:
-
“更快”——你是否在一秒钟内进行数百万次这些操作?
-
不,不是那些操作的数量。但我打算按照 Python 的禅宗找到“一种”方式来做到这一点
-
“Zen of Python”与性能和速度无关。
-
你说的对。如果速度无关紧要,我不知道如何比较上述两种方法。附言。
pathlib.Path.stem()的方式更容易理解。
标签: python-3.x os.path