加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python中返回文件扩展名的函数

发布时间:2020-12-20 12:01:20 所属栏目:Python 来源:网络整理
导读:我是 Python的初学者.我想了解以下函数,它返回该文件的扩展名: def get_extn(filename): return filename[filename.rfind('.'):][1:] 我不明白为什么在rfind函数[]中有括号而不是()以及为什么在括号之前有:和[1:].我很感激解释. 解决方法 你在这里看到的
我是 Python的初学者.我想了解以下函数,它返回该文件的扩展名:

def get_extn(filename):
    return filename[filename.rfind('.'):][1:]

我不明白为什么在rfind函数[]中有括号而不是()以及为什么在括号之前有:和[1:].我很感激解释.

解决方法

你在这里看到的是一个有两次切片语法的函数.对于支持切片语法的对象,可以编写:

object[f:t]

有f和t指数.然后,您得到一个以f开头并以t结尾的子序列(t是独占的).如果没有提供f或t,那通常意味着我们从开始或结束切片.

您的问题中的函数有点隐秘,实际上相当于:

def get_extn(filename):
    f = filename.rfind('.')
    filename = filename[f:]
    return filename[1:]

所以首先我们获得最后一个点的索引,然后我们构造一个从f开始的子字符串,最后我们从索引1开始的子字符串构造一个子字符串(从而删除第一个字符’.’).

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读