如何将以1开头的数字添加到列表中?

时间:2019-04-13 00:09:46

标签: python

如何将以1开头的数字添加到列表中?

def digit1x(lx):
list = []

for num in lx:
    temp = str(num)
    if temp[0]== '1':
        list.append(int(temp))
return list

print(digit1x(lx))

更新了代码,并且可以正常工作,谢谢您的帮助!

3 个答案:

答案 0 :(得分:0)

如果num是num[0],则不能执行int,例如,您可以写str(num)[0] == '1'。不要忘记处理特殊情况。

答案 1 :(得分:0)

您是否认为数字以10为底的数字以1开头?在这种情况下,您应该在检查数字之前先强制使用字符串:

>>> num = 12345
>>> str(num)
'12345'
>>> str(num)[0]
'1'

答案 2 :(得分:0)

由于无法获取整数的[0]索引值,因此发生了错误。仅可能获得数组或字符串的索引值。创建一个变量('temp'↓),该变量是该整数的[0]索引的字符串变量,然后在条件语句中使用该变量:

这有效:

def digit1x(lx):
list = []

for num in lx:
    temp = str(lx[num])
    if temp[0] == '1':
        list.append(temp)
        return list

print(digit1x(lx))

temp的值是当前项目的字符串值。

'temp [0]'是temp中的第一个字符,因此是当前项目中的第一个字符。

因此,如果temp [0]等于'1',则当前项中的第一个数字为1。