python列表在函数中 python 列表操作函数

在python里,想要把列表传进函数,在函数里使列表发生改变 。怎么实现? 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]
直接修改列表就可以了
在python的函数中,如何将列表list的一部分作为函数的参数?后面paraTestList(a[2:])中,括号里面的a[2:]命令是指创建了一个包含列表a的一部分的一个副本列表 。具体做法是:
def
paraTestList(L):
L[0]='z'
a=['a','b','c','d']
b=a[2:]
paraTestList(b)
print(b)
具体情况如下:
1.Python的函数定义简单但灵活度大 。除了正常定义的必选参数外,还可以使用默认参数、可变参数和关键字参数,使得函数定义出来的接口,不但能处理复杂的参数,也可以简化调用者的代码 。
2.默认参数可以简化函数的调用,设置默认参数时要注意:一是必选参数在前,默认参数在后,否则Python的解释器会报错;二是如何设置默认参数 。当函数有多个参数时 , 把变化大的参数放前面,变化小的参数放后面 。变化小的参数就可以作为默认参数 。
3.默认参数降低了函数调用的难度,而一旦需要更复杂的调用时,又可以传递更多的参数来实现 。无论是简单调用还是复杂调用,函数只需要定义一个 。
4.有多个默认参数时,调用的时候,既可以按顺序提供默认参数 。
4.Python函数在定义的时候,默认参数L的值就被计算出来了,即[] , 因为默认参数L也是一个变量,它指向对象[],每次调用该函数,如果改变了L的内容,则下次调用时,默认参数的内容就变了,不再是函数定义时的[]了 。
python中list(range())、range()、list()函数的用法转自
Pythonrange() 函数返回的是一个可迭代对象(类型是对象),而不是列表类型 , 所以打印的时候不会打印列表 。
函数语法:
range(stop)range(start,stop,step)//默认start为0 , step为1
Pythonlist() 函数是对象迭代器,可以把range()返回的可迭代对象转为一个列表,返回的变量类型为列表 。
list() 方法用于将元组转换为列表 。
注: 元组与列表是非常类似的,区别在于元组的元素值不能修改,元组是放在括号中( ) , 列表是放于方括号中[ ] 。
元组中只包含一个元素时,需要在元素后面添加逗号
tup1=(50,)
list、元组与字符串的索引一样,列表索引从0开始 。列表可以进行截取、组合等 。
Python对列表排序函数sort()和reverse()的讲解列表中的数据种类很多 , 有字符串,有整型,有其他列表的嵌套,还有更多的数据类型 , 这些数据在列表中往往是错乱的,没有一定的逻辑关系 , 但是我们在使用列表的时候往往需要按照一定的逻辑关系进行调用或检索 。下面就来看看 列表是如何排序和翻转的 ,所谓翻转也就是把既定列表倒序排列 。
返回结果:
从上面的返回结果可以看出来,sort()函数如果遇到字符串是按照首字母顺序进行排列的,如果遇到浮点型数据还是按照大小排列 。
由上面的结果可以看出来,不同的数据类型是没有办法进行排列的 。
这个方法是把原列表中的元素顺序从左至右的重新存放 , 而不会对列表中的参数进行排序整理 。如果需要对列表中的参数进行整理,就需要用到列表的另一种排序方式sort正序排序 。
四、 python中的数据类型——列表列表是一种有序的集合,有点类似c里面的数组 。它的特点是,可以随时向里面添加或删除其中的元素 , 在python中经常用来存放数据 。列表的特点是中括号,内部元素用逗号隔开 。
在这个列表中,可以放进去任何元素,不论python列表在函数中你的元素是字符串、整型、浮点型、还是布尔值、空值,包括列表什么的,都可以放进去 。
元素与元素之间,用逗号隔开 。
列表会为每个元素分配序号 , 这个序号代表它的位置,称为索引(index),第一个元素的位置是0,第二个元素是1,以此类推 。
使用索引获取列表中的值时 , 需要使用中括号来访问,在中括号前面加上列表名,中括号内部是元素的索引 。
0代表第一个元素的位置 , 1代表第二个,-1代表倒数第一个,-2代表倒数第二个
使用 len() 函数,可以查看列表里面有多少个元素
在python中,列表的操作是非常的灵活的,python列表在函数中我们可以向其中添加或删除元素 。
添加使用 list.append() 函数
list.append() 函数是将元素插入到列表的末尾,当python列表在函数中我们想在特定位置插入元素时可以使用 list.insert() 函数
list.insert() 函数接受两个参数 , 第一个参数是插入位置,第二个参数是要插入的元素 。
需要注意的是,在使用append和insert时 , 必须在前面注明要操作的列表 。就像上面的例子,我们要操作classmates这个列表,所以必须写成 classmates.append() 或 classmates.insert(),如果不这么写 , 计算机就不知道你要往哪个列表中加入元素 。
没有特殊情况的话,推荐使用append()函数添加元素,因为使用append的时候,元素默认加在列表尾部,不会造成其他元素索引值的改变 。如果使用insert的话,就像上面的insert(1,'Tom') , 在位置1插入'Tom'后,Tom后面所有的元素 , 索引值都加了一个1,列表中元素越多,受影响的程度越大,因此使用append()函数要比insert()函数更快 。
删除列表中元素的方法有三种
del后面需要用索引的方式表明要删除的元素,也就是上面的例子 , names[1]代表names中的第二个元素,使用del即可删除
list.pop() 函数与del差不多 , 都是使用索引值进行删除,只不过写法不同 。
我们可以发现,执行 names.pop(1) 后,python shell打印出了第二个元素的值,也就是我们要删除的那个值,这是因为 pop() 这个函数,是有返回值的,有时候我们需要使用这个值,这个时候就可以用变量存起来 。
这样我们就可以通过调用a而使用刚才删掉的元素了 。
list.remove() 函数的作用是删除第一个匹配的元素,上面的例子中,names这个列表里面,有两个'Bob',remove函数只删除了第一个'Bob' 。这就是 list.remove() 函数的特点 。
有时候我们想使用列表的前10个元素,或者前n个元素,这时候就应该使用列表的切片 。
切片和索引类似,都是使用中括号,区别是,索引中的中括号里面只有一个数,而切片不同 。切片是切割列表,形成切割下来的部分形成新的列表 。
切片python列表在函数中: list[start:end:[step=1]] ,这就是切片的表达式,要求start和end两者必须有一个,step不是可以不指定 , 不指定的时候默认为1 。
切片该怎么理解呢,start就是开始的位置,end就是结束的位置 。切片有个特点是“取前不取后” , 看上面那个例子可以发现 , 1作为start,3作为end,1代表第二个元素 , 3代表第四个元素,列表切片的时候,是不取后面的那个数字对应的元素的,也就是不取第四个元素,所以names[1:3]只取了第二个元素和第三个元素,这就是所谓的取前不取后 。
再看下一个例子 。
当不指定start或者end的时候,start默认为0,end默认为最后一个元素的索引值 1,因为“取前不取后”,要想取到最后一个元素,必须加个1才行 。
上例中,用 len(numbers) 表示了最后一个元素的索引值,因为索引值从0开始 , 最后一个元素的索引值一定是列表内元素个数-1,根据“取前不取后”,在end位置上的数字应该 1,所以最后就等于 len(numbers) 了 。
当不设定start和end的时候,就默认取所有的元素了 。
当加入step,这个选项后,step代表步长,默认为1,设定成2的时候 , 就是隔一个取一个 , 设定成3时就是隔两个取一个 。
上例中,第一个切片,start和end均未设定,因此从第一个元素开始 , 隔一个取一个 , 得到了所有奇数位置的元素 。
第二个切片,start设定为了1,因此取了所有偶数位置的元素 。
3在列表中,0不在列表中,所以 3 in a 是True , 而 0 in a 是False
更多关于列表的信息可以通过使用 help(list) 查看帮助文档 。
Python中 自己定义的函数内生成的列表 怎么在外部中引用?下面的例子演示了用3种方法来在外部引用函数内部定义的列表:
#返回函数内部定义的列表
def int_list1():
l=[1,2]
return l
#将函数内部列表定义成全局的
def int_list2():
【python列表在函数中 python 列表操作函数】 global l
l=[3,4]
#将函数内部列表定义成函数的一个属性
def int_list3():
l=[5,6]
int_list3.l=l
print(int_list1())
int_list2()
print(l)
int_list3()
print(int_list3.l)
这是截图:
关于python列表在函数中和python 列表操作函数的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站 。

    推荐阅读