十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
代码及运行结果如图:
蒙山网站建设公司成都创新互联公司,蒙山网站设计制作,有大型网站制作公司丰富经验。已为蒙山近1000家提供企业网站建设服务。企业网站搭建\外贸营销网站建设要多少钱,请找那个售后服务好的蒙山做网站的公司定做!
从你的问题来看是一个新手,建议直接放弃2.x版本学习3.x版本。对现在的你来说用到的2与3版本之间的差异可能也就是print(如图中所示与你代码的差异),影响很小。
代码解释:
你的代码中用A,B = inputlist,inputlist进行赋值,实际A与B都是指向了同一个内存对象,所以对其中任意一个做出修改,即修改了内存中的这个对象,造成A与B同时修改。解决方法,引入copy模块中的deepcopy()函数,保证A与B指向长的一样但在内存中是两个对象,这样对其中一个修改时完全不影响到另一个。
l = range(5)
def func(m):
... m[3] = 999
...
print l
[0, 1, 2, 3, 4]
func(l)
print l
[0, 1, 2, 999, 4]
直接修改列表就可以了
def function(l):
return [a + 3 for a in l]
思路就是使用一个列表推导来实现循环,让每一个元素都加3.