你的Python替换程序的主要问题有两个
1 传到replace函数中的lis被初始化为空列表
2 被替换后的列表rep没有被返回主函数
改正后的Python替换程序如下(改动的地方见注释)
def replace(a,b,lis):
#lis=[] #这里去掉这句,传过来的列表lis不能再初始化为空列表
rep=[b if x==a else x for x in lis]
return rep #这里加一句返回替换后的列表
lis=[1,2,3,4,5]
lis=replace(1,2,lis) #这里用原列表lis接收返回值
print(lis)