輸入一個嵌套列表,嵌套層次不限,根據層次,求列表元素的加權和。第一層每個元素 的值為:元素值*1,第二層每個元素的值為:元素值*2,第三層每個元素的值為:元素值*3, ...,以此類推!
輸入格式:
在一行中輸入列表
輸出格式:
在一行中輸出加權和
代碼如下:
#!/usr/bin/python # -*- coding: utf-8 -*- def getint(s,count): if type(s) == int: return s * count elif type(s) == str: return 0 elif type(s) == list or type(s) == tuple: result = 0 for i in range(0,len(s)): result += getint(s[i],count+1) return result else: return 0 s = list(eval(input())) sum = 0 for i in range(0,len(s)): sum = sum + int(getint(s[i],1)) print(sum)
這個程序把上一個改改就好了。
給getint傳入2個參數,一個參數是判斷值,一個參數是控制第幾層。再次調用count+1即可。
讀書和健身總有一個在路上