关于python中的列表问题。把子列表当做母列表的元素,对子列表进行操作时,之前已添加的子列表的值会被改
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于python中的列表问题。把子列表当做母列表的元素,对子列表进行操作时,之前已添加的子列表的值会被改相关的知识,希望对你有一定的参考价值。
这是我写的:
#定义add函数在list最后加1
def add(mylist):
mylist.append(1)
return mylist
#初始化列表
numberlist=[] #数字列表
storelist=[] #存储列表
storelist.append(numberlist)
numberlist=add(numberlist)
storelist.append(numberlist)
print(storelist)
输出结果是[[1], [1]] 可是我设计想要的结果是[[], [1]]
求指教
import copy
def add(mylist):
sub_list = copy.deepcopy(mylist)
sub_list.append(1)
return sub_list
#初始化列表
numberlist=[] #数字列表
storelist=[] #存储列表
storelist.append(numberlist)
numberlist=add(numberlist)
storelist.append(numberlist)
print(storelist)
就改了add里的方法,并且开头新增导入代码import copy
来自:求助得到的回答 参考技术A t=[1,2,3,4,5,6,1,2,3,4,5,1,2,3,4,1,2,3,1,2,1,6,6,6,6,6,6,6,6]d=foriinset(t):d[i]=t.count(i)t=sorted(d.iteritems(),key=lambdax:x[1],reverse=True)j=1foriint:printi[0]按出现次数大小输出,你取前10个就可以啦~python 选择排序
项目要求:对一个列表中的值从大到小进行排序,利用选择排序法进行排序,首先找出列表中最大的值,将列表中最大值弹出并且追加到一个新的列表中,直到所有的值都弹出,获得的这个新列表中的值就是从大到小排序。
定义一个列表中包含上述图片中的5个值
定义求最大值的自定义函数fBig(列表名),找到列表中的最大值,列表当做参数传入自定义函数中。
假设第一个值是最大值,第一个值的索引是最大值索引,遍历列表中剩下的值,如果比第一个值大就记录下来,最后返回最大值的索引值。
完整的求列表中最大值的索引值的自定义函数如下图
定义选择排序的自定义函数selectSort(列表名),列表当做参数传入自定义函数中
定义一个新列表用来存放弹出的最大值。
遍历列表中的每个值 ,找出最大值弹出后追加到新的列表中
整体的选择排序如下图
以上是关于关于python中的列表问题。把子列表当做母列表的元素,对子列表进行操作时,之前已添加的子列表的值会被改的主要内容,如果未能解决你的问题,请参考以下文章