用元组查找列表中最长的字符串
Find the longest characters string in list with tuples
我正在寻找包含元组对的列表中最长的字符串。但仅限于所有元组的第一个元素。
VMT = [('T_WIN2019_04.2020', 'Microsoft Windows Server 2016 (64-bit)'), ('T_CENTOS_7.8_04.2020', 'CentOS 7 (64-bit)'), ('T_WIN2016_05.2019', 'Microsoft Windows Server 2016 (64-bit)'), ('T_W2019_STD_EN', 'Microsoft Windows Server 2016 (64-bit)'), ('T_W2016_DTC_EN', 'Microsoft Windows Server 2016 (64-bit)')]
我用这个:
max(VMT, key=len)[0]
'T_WIN2019_04.2020'
T_WIN2019_04.2020 = 16 个字符
应该是:
'T_CENTOS_7.8_04.2020'
T_CENTOS_7.8_04.2020 = 20 个字符
我认为计算是针对整个元组而不是元组的第一个元素进行的。
key
on max
函数应该是元组第一个元素的长度:
max(VMT, key=lambda t: len(t[0]))[0]
'T_CENTOS_7.8_04.2020'
我正在寻找包含元组对的列表中最长的字符串。但仅限于所有元组的第一个元素。
VMT = [('T_WIN2019_04.2020', 'Microsoft Windows Server 2016 (64-bit)'), ('T_CENTOS_7.8_04.2020', 'CentOS 7 (64-bit)'), ('T_WIN2016_05.2019', 'Microsoft Windows Server 2016 (64-bit)'), ('T_W2019_STD_EN', 'Microsoft Windows Server 2016 (64-bit)'), ('T_W2016_DTC_EN', 'Microsoft Windows Server 2016 (64-bit)')]
我用这个:
max(VMT, key=len)[0]
'T_WIN2019_04.2020'
T_WIN2019_04.2020 = 16 个字符
应该是:
'T_CENTOS_7.8_04.2020'
T_CENTOS_7.8_04.2020 = 20 个字符
我认为计算是针对整个元组而不是元组的第一个元素进行的。
key
on max
函数应该是元组第一个元素的长度:
max(VMT, key=lambda t: len(t[0]))[0]
'T_CENTOS_7.8_04.2020'