那要个修改好几个地方:
# 定义函数
def find_num(n, list_an, a):
find_a = []
list_an = list(list_an)
# 判断 数列长度是否与第一行给定整数n相等
# 如果不相等,则输出提示
if len(list_an) != n:
print('数列长度为:', len(list_an), '与整数', n, '不相等,', '请重新赋值')
# 如果相等,则进行查询
elif len(list_an) == n:
for i in range(n):
# 判断第三行整数a在给定的数列中是否存在相同值的元素
# 如果存在,在输出数列中与a相同值的元素索引位置,并存储到find_a[]列表中
if a == int(list_an[i]):
find_a.append(i)
print('第一行整数为:', n)
print('第二行数列为:', list_an)
# 对列表升序排序,其实这个没必要,因为上面已经是顺序查询
find_a.sort()
# print(find_a)
# 输入 find_a[0] 即 a 在数列中出现的位置
# 当然如果你从1开始计算则需要将find_a[0]+1
print('第三行整数:', a, '在数列中第一次出现的位置:', find_a[0] + 1)
return find_a
############################################################
# n = 6
# list_an = '194839'
# a = 9
n = int(input('请输入第一行整数:'))
list_an = str(input('请输入第二行字段:'))
a = int(input('请输入第三行整数:'))
find_num(n, list_an, a)