python如何分离文件名和扩展名(python把文件分为几种文件类型)

liftword6个月前 (12-30)技术文章67

作为新手,如果需要用python将文件名和扩展名分开,你会怎么处理?

full_files = [
    'dsie.txt',
    'woeifj.py',
    'jfosdi.cpp',
    'dkjfowe.43.mp3',
    'doif.tar.gz'
]

通常如果上面的文件名,一般都会想到用字符串分割再拼接的方式:

for file in full_files:
    file_split = file.split(".")
    name = '.'.join(file_split[0 : -1])
    suffix = '.' + file_split[-1]
    print(f"name : {name}, suffix : {suffix}")

但上面的方式我不是很推荐,你可以直接用python自带的接口:

import os

for file in full_files:
    pure_path = os.path.splitext(file)
    name = pure_path[0]
    suffix = pure_path[1]
    print(f"name : {name}, suffix : {suffix}")

还有一种方式是我最推荐的,我之前写过《在python中如何去检测文件是否存在?》文章中提到过:

import pathlib

for file in full_files:
    pure_path = pathlib.PurePath(file)
    name = pure_path.stem
    suffix = pure_path.suffix
    print(f"name : {name}, suffix : {suffix}")

上述运行效果如下:

name : dsie, suffix : .txt
name : woeifj, suffix : .py
name : jfosdi, suffix : .cpp
name : dkjfowe.43, suffix : .mp3
name : doif.tar, suffix : .gz

大家有什么想法也可以相互交流相互学习。

相关文章

一文搞懂Python中的import与目录层级

在Python开发中,合理地组织代码和正确地使用import语句是构建可维护、可扩展项目的关键。在具体介绍之前,我们先理解两个概念:包(package)和模块(module)模块(module) 可以...

python.exe 和 pythonw.exe 的区别

(区分.py、.pyw、.pyc 文件)最近也在学习python,针对python中的一些问题做下记录,希望大家共同成长; Windows系统搭建好Python的环境后,进入Python的安装目...

python文件操作常用方法整理(python文件操作常用方法整理图片)

一、删除文件夹下的所有文件导入os库通过os.listdir方法获取给定目录下的所有文件名,使用os.path.join方法循环拼接文件名和目录名,通过os.unlink方法删除指定的文件import...

Python中使用pandas进行文件读取和写入方法详解

Pandas 是 Python 的一个功能强大且灵活的三方包,可处理标记和时间序列数据。还提供统计方法、启用绘图等功能。Pandas 的一项重要功能是能够编写和读取 Excel、CSV 和许多其他类型...