第6章-5.列表元素个数的加权和(1) (40分)


输入一个嵌套列表,嵌套层次不限,根据层次,求列表元素的加权个数和。第一层每个元素算一个元素,第二层每个元素算2个元素,第三层每个元素算3个元素,第四层每个元素算4个元素,...,以此类推!

输入格式:

在一行中输入一个列表。

输出格式:

在一行中输出加权元素个数值。

输入样例:

在这里给出一组输入。例如:

[1,2,[3,4,[5,6],7],8] 
 

输出样例:

在这里给出相应的输出。例如:

15
 1 # 列表元素个数的加权和(1)
 2 # Author: cnRick
 3 # Time : 2020-4-13
 4 def getSum(items,depth):  5     if (type(items) == int) or (type(items) == str):  6         if type(items) == int:  7             return depth  8         elif type(items) == str:  9             return 0 10     else: 11         if (type(items) == tuple) or (type(items) == list): 12             result = 0 13             for i in range(len(items)): 14                 result += getSum(items[i],depth+1) 15             return result 16         else: 17             return 0 18 
19 items = eval(input()) 20 result = 0 21 for i in range(len(items)): 22     result = result + getSum(items[i],1) 23 print(result)

 

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM