【发布时间】:2018-05-28 12:40:34
【问题描述】:
我想知道如何使用拆分功能从列表中计算总数。
例如,
workdays = {'work': '5,6,8,10,13,14,15,18,20,22,24,25,28,30'}
输出应该是这样的
我已经工作了 14 天。
【问题讨论】:
-
查看链接,然后使用
len()获取项目数 -
顺便说一句,您使用的是字典而不是列表。
我想知道如何使用拆分功能从列表中计算总数。
例如,
workdays = {'work': '5,6,8,10,13,14,15,18,20,22,24,25,28,30'}
输出应该是这样的
我已经工作了 14 天。
【问题讨论】:
len() 获取项目数
提示:您可以通过键访问字典中的值:
>>> workdays = {'work':'1,2,3,4'}
>>> workdays['work']
'1,2,3,4'
第二个提示:您可以像这样使用str.split(delimiter) 拆分字符串:
>>> s = '1,2,3,4'
>>> s.split(',')
['1', '2', '3', '4']
第三个提示:len()
【讨论】:
这不是一个列表。您正在使用带有键和值的字典。使用逗号获取值 split 并使用 len 查找长度。
workdays = {'work': '5,6,8,10,13,14,15,18,20,22,24,25,28,30'}
print('I have worked {} days'.format(len(workdays['work'].split(','))))
此外,您可以计算逗号的数量并将1 添加到其中以获得相同的结果,如下所示:
print('I have worked {} days'.format(workdays['work'].count(',')+1))
【讨论】:
将str.split 与len 一起使用
例如:
workdays = {'work': '5,6,8,10,13,14,15,18,20,22,24,25,28,30'}
print(len(workdays["work"].split(",")))
输出:
14
【讨论】:
我会这样做:
len(wd.get('work').split(','))
测量包含每一天的列表的长度
【讨论】: