关于python的面试题目
一般面试软件测试,都会问到一些简单的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]
10、怎么统计字符串出现的次数
a=[1,3,5,6,7,6,3,4,5]
b={}
for i in a:
if a.count(i)>1:
b[i]=a.count(i)
print(b)
11、怎么删除字符串指定的字符
方法1
str="abbdyuuydsfsdfasssab"
#假如要删除ab
str1=str.replace("ab",'') #实现替换
print(str1)
12、python2和python3的区别
最主要的区别编码不同:python2是asci编码 python3是utf8编码
13、python求1-100的和
a=0
for i in range(0,100):
a+=(i+1)
print(a)
或者
a=sum(range(0,101))
print(a)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了