一般面试软件测试,都会问到一些简单的python开发基础,以下是我本人面试遇到的一些问题做下记录
1、倒序输出字符串
str="abc"
print(str[::-1])
或者
a=[]
for i in str:
a.append(i)
a.reverrse()
print("".join(a)) #返回的是字符串
2、统计字符串输出的个数
str="hello world"
res={}
for i in str:
res[i]=str.count(i)
print (res)
或者
str="hello world"
alist=list(str)
alist.resever()
blist=""
b=blist.join(alist) #返回一个字符串
a={}
for i in b:
a[i]=b.count(i)
print(a)
3、数鸡和兔子有多少只,首先告诉你多少只脚,多少个头。
x=120 表示头
y=350 表示脚
for i in range(1,x):
j=x-i
if 2*x+4*j==y:
print(x,j)
4、怎么运算幂方式
def a(x,n)
if n==0;
return 1
else:
return x*a(x,n-1)
5、怎么对列表进行去重
list=[1,2,4,6,7,8.1,3,5]
print(set(a))
6、实现一个冒泡排序
arr=[1,6,7,3,4,9,88,15,24,9000]
s=range(len(arr))[::-1]
for i in s:
for j in range(i):
if arr[j]>arr[j+1]:
arr[j],arr[j+1] = arr[j+1],arr[j]
print(arr)
7、一个列表统计出多少个正数和负数
a=[1,3,5,6,7,-9,-6,-4,-2]
c=[]
d=[]
for i in a:
if i>0:
c.append(i)
elif i<0:
d.append(i)
print(len(c))
print(len(d))
8、通过python实现99乘法表
for i in range(1,10)
for j in range(1,i+1):
print("%s*%s=%s"%(i,j,i*j),end=" ")
print(' ')
9、append和extend的区别
#append的实现
a=[1,2,3,4,5]
c=[6,7]
a.append(c)
print(a)
#[1,2,3,4,5,[6,7]]
#extend的实现
a=[1,2,3,4,5]
c=[6,7]
a.extend(c)
print(a)
#[1,2,3,4,5,6,7]