
正文
python列表修改函数 python用函数修改列表
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
新手请教,python怎么定义可修改列表的函数
t_list=['m1','m2','m3']def show_maagicians(L): for i in t_list: print(i) return show_maagicians(t_list) def make_great(L): for i in range(len(L)): L[i]='the Great '+L[i] return make_great(t_list)show_maagicians(t_list)
相关问答
Q1: Python 如何利用函数修改函数外list
"""
使用global子句。在stisfiesF函数中,声明L为一个全局变量,如此
你在该函数中修改L的值,则会体现到函数之外。这种写法违背Python
优雅的原则,不推荐使用,仅供学习.【L中的元素不能有数字,否则
报错,我也不知什么原因】
"""
def f(s):
return 'av' in s
# 在声明L为全局变量之前定义,代码更直观
L = ['av1', 'av', 'a','b','ac','love','python',('f','av','gh'),[1,2,3]]
# 此处函数不传入参数L
def satisfiesF():
# 声明L为全局变量
global L
x = []
for i in L:
if f(i):
x.append(i)
else:
pass
L = x
return len(L)
print ('新列表L的长度为%s'%satisfiesF())
print ('将原列表修改为元素含有"av"的新列表L:')
print(L)
"""
结果:新列表L的长度为3
将原列表修改为元素含有"av"的新列表L:
['av1', 'av', ('f', 'av', 'gh')]
"""
Q2: python(16):函数(3)
==================================
将列表传递给函数后,函数就能直接访问其内容
假设有一个用户列表,要问候其中的每位用户
将列表传递给函数后,函数就可对其进行修改,在函数中对这个列表所做的任何修改都是永久性的
一家为用户提交的设计制作3D打印模型的公司,需要打印的设计存储在一个列表中,打印后转移到另一个列表中。
有时候需要禁止函数修改列表,为解决这个问题,可想向函数传递列表的副本而不是元件;这样函数所做的任何修改都只影响副本,不影响元件
有时候,预先布置的函数需要接受多少个实参,python允许函数从调用语句中手机任意数量的实参
一个制作披萨的寒素,它需要接受很多配料,但无法确定顾客要多少种配料,下面函数只有一个形参*toppings,不管调用语句提供了多少实参,这个形参都将他们统统收入囊中
如果要让函数接受不同类型的实参,必须在函数定义中将接纳任意数量实参的形参放在最后
python先匹配位置实参和关键字实参,再将余下的实参收集到最后一个形参中
如果前边的函数还需要一个表示披萨尺寸的实参,必须将该形参放在*toppings的前面
有时候,需要接受任意数量的实参,但预先不知道传递给函数的会是射门杨的信息,再这种情况下,可将函数编写成能够接受任意数量的键-值对,调用语句提供了多少就接受多少
创建用户简介:你知道你将收到有关用户的信息,但不确定会是什么样的信息,在下面示例中,build_profile()接受名和姓,同时还接受任意数量的关键字实参
Q3: python中列表的增删改查
关于列表首先需要知道它是一系列按特定顺序排列的元素组成
你可以创建包含字母表中所有字母、数字0至9或所有家庭成员姓名的列表;也可以将任何东西加入列表中,其中的元素之间可以没有任何关系。鉴于列表通常包含多个元素,给列表指定一个表示复的名称是个不错的主意。
以下内容是基于python来做列表的讲解,主要讲的是列表的增删改查,包括哪些函数及例子,本次涉及的函数如下:
在实际的数据处理场景中,可以通过循环,把每次循环的结果依次添加到列表中,便于我们处理数据。
List(列表) 是 Python 中使用 最频繁 的数据类型,在其他语言中通常叫做 数组
列表有以下特性:
· 专门用于存储一串信息
· 用[ ]定义,数据之间用逗号(,)分隔
· 索引从0开始
列表从0开始,如果超过索引值就会报错:list index out of range
insert(0,8) 在索引为0的位置插入数字8
append 在列表结尾插入数字8
append 在列表结尾插入新的列表,会出现数据不会依次加上,而是作为一个整体。
extend 在结尾插入别的列表的数据,该函数可以解决添加列表数据的问题
注意使用 append 追加的是将后面的 列表作为一个整体追加到最后 ,而使用 extend 追加的是将里面的 元素依次追加到最后 。
del 列表[索引]:删除指定索引元素
列表.remove(数据):删除第一个数值
列表.pop():可指定索引删除,不指定会删除最后一个
列表.index(数据):查询给定值的索引,即想要知道元素的位置,如果查询元素有多个相同值只会返回第一个值出现的记录
len(列表):有多少个元素
一个学校,有3个办公室,现在有8位老师等待工位的分配,请编写程序,完成随机的分配,假设每个教室可以容纳任意数量的教师
对列表for遍历出来,找出我们需要的数值。
尽管 Python 的 列表 中可以 存储不同类型的数据
但是在开发中,更多的应用场景是
· 列表 一般只存储 相同类型 的数据
· 通过 for循环 ,在循环体内部,针对列表中的每一项元素,执行相同的操作
Q4: python常用列表函数
1
len(list)
列表元素个数
2
max(list)
返回列表元素最大值
3
min(list)
返回列表元素最小值
4
list(seq)
将元组转换为列表
序号
方法
1
list.append(obj)
在列表末尾添加新python列表修改函数的对象
2
list.count(obj)
统计某个元素在列表中出现的次数
3
list.extend(seq)
在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)
4
list.index(obj)
从列表中找出某个值第一个匹配项的索引位置
5
list.insert(index, obj)
将对象插入列表
6
list.pop([index=-1])
移除列表中的一个元素(默认最后一个元素)python列表修改函数,并且返回该元素的值
7
list.remove(obj)
移除列表中某个值的第一个匹配项
8
list.reverse()
反向列表中元素
9
list.sort( key=None, reverse=False)
对原列表进行排序
10
list.clear()
清空列表
11
list.copy()
复制列表
Q5: Python 中如何修改禁止函数修改列表
有的时候, 我们希望会保留列表中的数据作为备份,又不希望函数中不修改列表的值,该怎么做?python中提供了一种方法,将列表的副本传递给
函数,这样函数修改的只是列表的副本, 不会修改原列表的内容,可以按照下面这样做:
function_name(list_name[:])
切片表示法[:]创建列表副本.
如下面程序: 我们可以 给print_models 方法传递 unprinted_designs[:],这样原列表 unprinted_designs值的就不会被修改
def print_models(unprinted_designs ,completed_models):
"""
模拟打印每个设计,直到没有未打印的设计为止
打印每个设计后,都将其移到列表completed_models中
"""
while unprinted_designs:
current_design = unprinted_designs.pop()
#模拟根据设计制作3D打印模型的过程
print("Printing model:"+current_design)
completed_models.append(current_design)
def show_completed_models(completed_models):
"""显示打印的所有模型"""
print("\n The following mdels have been printed:")
for completed_model in completed_models:
print(completed_model)
unprinted_designs =['iphone case','robot pendant','dodecahedron']
completed_models = []
print_models(unprinted_designs , completed_models)
show_completed_models(completed_models)
python列表修改函数的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于python用函数修改列表、python列表修改函数的信息别忘了在本站进行查找喔。






