我刚刚开始学习Python,并陷入了这个问题:
list = [144, 233, 377, 610, 987, 1597, 2584, 4181, 6765, 10946, 17711, 28657, 46368, 75025]
如何获取这些数字的第一个值/元素?例如:
[1, 2, 3, 6, 9, 1, 2, 4, 6, 1, 1, 2, 4, 7]
谢谢!
答案 0 :(得分:0)
首先,请不要:不要将变量命名为list
。您正在遮掩一个关键字。
您可以将每个数字转换为字符串并获取第一个字符:
def first_digit(num):
return int(str(num)[0])
或使用递归:
def first_digit(num):
if num < 10:
return num
return first_digit(num // 10)
然后只使用列表推导来生成列表:
result = [first_digit(n) for n in lst]
答案 1 :(得分:0)
我可以为您提供一些可能帮助您的步骤
遍历列表
对于每个元素,请找到 Q = 10 ^(元素中的位数-1)
将数字除以上述值并记下商数