我是技术出生,应该是在和孩子们的互动上出了问题,面试没有通过。下面我把我做过的小码王少儿编程Python岗位笔试题分享给大家,面试官说:之前有几年开发经验的人可能连某些简单的题都做不出来,这引发我们更深的思考。面试很重要,笔试我们也要做好啊,希望对您有所帮助。这是全网第一份。
一. 简答题(每题5分,共8题,共计40分)
- 获取列表中元素个数的函数是:
len
- 哪个函数可以获取列表中指定元素的索引值:
index
- 我们在安装第三方库的时候,经常会用哪个库管理工具:
pip
- 匿名函数定义时,我们会用哪个关键字:
lambda
- 用哪个关键字可以把某个局部变量变成全局变量:
global
- 把十进制87转成三进制表示是:
10020
- 5()2的答案是2(括号中填写合适的运算符):
//
- 哪个关键字可以让程序跳过本次循环,进入下一次循环:
continue
基础题相当简单,相当基础,这几题应该都可以做对!
二. 程序题(每题10分,共6题,共计60分)
- 输入正整数n,输出1+2+3+n-1+n的和,如输入实例100,输出5050。
def f(n):
sum = 0
for i in range(1,n+1):
sum += i
return sum
n = int(input('请输入n的值:'))
sum = f(n)
print(sum)
执行记录:
请输入n的值:100
5050
- 输入整数n,输出1到n之间(包含n)所有素数的个数。
def f(n):
count=0
for i in range(2,n+1):
for j in range(2,i):
if i%j == 0:
count+=1
# print('{}不是素数'.format(i,))
break
return n-count-1 # 素数是大于1的数年所以要减去1个
n = int(input('请输入n的值:'))
print('素数的个数为:{}'.format(f(n)))
执行记录:
请输入n的值:10
素数的个数为:4
- 已知Sn=1+1/2+1/3+1/4+……+1/n,显然对于任意一个整数K,当n足够大的时候Sn大于K。现输入一个整数K(1<=K<=15),要求输出一个最小值n,使得Sn大于K。
博主在整理答案中!
- 输入两个整数m、n,输出这两个数的最大公约数和做小公倍数之和。
# 这里使用辗转相除法来实现
def result(a,b):
num1,num2,tmp,sum = 0,0,1,0
if a>b:
num1 = a
num2 = b
else:
num1 = b
num2 = a
while tmp!=0:
tmp = num1%num2
num1 = num2
num2 = tmp
# print('最大公约数是:',num1)
# print('最小公倍数是:',a*b//num1)
return num1+a*b//num1
print(result(120,90))
执行记录:
390
- 输入10个数字,将这10个数字进行去重之后从小到大排列一行输出。如输入:2 4 2 5 1 3 1 3 8 7,输出:1 2 3 4 5 7 8。
num = input('请输入10个数字:')
ret = num.split(' ')
lst = []
# 项列表中添加元素
for item in ret:
lst.append(i
# 我这里就暂且使用冒泡排序来做
for i in range(0,len(lst)-1):
for j in range(0,len(lst)-1-i):
if lst[j]>lst[j+1]:
lst[j],lst[j+1] = lst[j+1],lst[j]
# 将lst转换为set类型,再转换为list类型来实现去重
lst = list(set(lst))
for j in lst:
print(j,end=' ')
执行记录:
请输入10个数字:2 4 2 5 1 3 1 3 8 7
1 2 3 4 5 7 8
- 校区有n盏灯,编号为1,2,3,4…n,
完整题目没有收集到,博主在整理中!