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

Python 如何将以1开头的数字添加到列表中?,python,Python,如何将以1开头的数字添加到列表中 def digit1x(lx): list = [] for num in lx: temp = str(num) if temp[0]== '1': list.append(int(temp)) return list 打印(数字1X(lx)) 更新的代码,并且可以正常工作,谢谢您的帮助 如果num是一个int,则不能执行num[0],例如,您可以编写str(num)[0]='1'。如果有特殊情况,别忘了处理。你认为数字以1

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

def digit1x(lx):
list = []

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


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

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

你认为数字以10为基数以1开头?在这种情况下,在检查数字之前,应首先强制输入字符串:

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

发生错误的原因是无法获取整数的[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