如果我想找到数字的数字之和,即:
93214,即(9 + 3 + 2)这样做的最快方法是什么?
我本能地做了:
sum(int(digit) for digit in str(number))
我在网上找到了这个:
sum(map(int, str(number)))
哪种方法最适合速度,还有其他方法更快吗?
我已经定义了如下函数来尝试在两组数据之间进行插值.当我运行它时,我收到消息:
    for i, j in range(0, len(wavelength)):
TypeError: 'int' object is not iterable
我不确定我做错了什么.不可否认,我对此并不擅长.
def accountforfilter(wavelength, flux, filterwavelength, throughput):
    filteredwavelength=[]
    filteredflux=[]
    for i in range(0, len(wavelength)):
        if wavelength[i] in filterwavelength[j]:
            j=filterwavelength.index(wavelength[i])
            filteredwavelength.append(wavelength[i])
            filteredflux.append(flux[i]*throughput[j])
        elif wavelength[i]<filterwavelength[j]<wavelength[i+1]:
            m=((throughput[j+1]-throughput[j])/(filterwavelength[j+1]-filterwavelength[j])
            c=throughput[j]-(m*(wavelength[i]))
            filteredwavelength.append(wavelength[i])
            filteredflux.append(flux[i]*(m*wavelength[i]+c)
    return filteredwavelength, filteredflux