2024-10-03 19:27:48 发布
网友
我试着得到0到100000之间的数字列表。然后我要乘以列表的每一秒。我不知道如何得到数字的第二位数。在
def breakandSum(): if 0<=x<100000: digits=(map(int,str(x))) return digits
要获得以10为基数的第二个数字,首先将数字修改为100以截断前导数字,然后取整数结果并除以整数10以截断后面的数字。在
下面是一个快速示例,其中x=4567从右侧提取第二个以10为基数的数字,或“十”位数,在本例中为“6”:
>>> x = 4567 >>> x = x % 100 >>> x = x / 10 >>> print x 6
如果要将所有数字放入列表中,只需提取最右边的数字,将其附加到列表中,然后截断并继续循环,如下所示:
从这里,您可以使用列表理解和过滤器获得每一个第二位数:
>>> every_other_digit = [xdigit[i] for i in filter(lambda j: j % 2 == 0, range(len(xdigit)))] >>> print every_other_digit [7, 5]
如果您需要将这些数字相乘,您现在只需在列表上进行迭代即可得到最终产品:
>>> answer = 1 >>> for k in every_other_digit: answer *= k ... >>> print answer 35
要获得以10为基数的第二个数字,首先将数字修改为100以截断前导数字,然后取整数结果并除以整数10以截断后面的数字。在
下面是一个快速示例,其中x=4567从右侧提取第二个以10为基数的数字,或“十”位数,在本例中为“6”:
如果要将所有数字放入列表中,只需提取最右边的数字,将其附加到列表中,然后截断并继续循环,如下所示:
^{pr2}$从这里,您可以使用列表理解和过滤器获得每一个第二位数:
如果您需要将这些数字相乘,您现在只需在列表上进行迭代即可得到最终产品:
相关问题 更多 >
编程相关推荐