Python内联从deleg获取元组的一个成员

2024-04-16 20:43:37 发布

您现在位置:Python中文网/ 问答频道 /正文

Froma previous question函数不能在dictionary对象中内联定义。你知道吗

不过,我有个简单的案子

def getExtension(fileName):
    return os.path.splitext(fileName)[1]

funcDict = { 
    'EXT': getExtension,  # maybe os.path.splitext[1]?
    }

print(funcDict['EXT']('myFile.txt'))

有没有什么方法可以指定我只需要os.path.splitext返回元组的一个元素,这样我就可以不再定义getExtension?你知道吗


Tags: path对象函数dictionary定义osfilenameext
2条回答
funcDict = {
    'EXT': (lambda x: os.path.splitext(x)[1])
}

我认为使用关键字参数来实例化一个新的dict有时更好,因为关键字参数看起来更可读。你知道吗

funcDict = dict(EXT=(lambda x: os.path.splitext(x)[1]))

它将返回:

{'EXT': <function <lambda> at 0x00000000021281E0>}

相关问题 更多 >