python向函数传递列表,【Python】向函数传递列表
向函数传递列表
在实际使⽤中你会发现,向函数传递列表是⽐较实⽤的,这种列表可能包含名字、数字、可能更复杂的对象(字典)
假设向⼀个函数传递⼀堆⽔果,我们说出我们喜欢所有的⽔果
def Obj(fruits):
for fruit in fruits:
msg = 'I like '+fruit+'!'
python怎么读的print(msg)
L = ['apple','orange']
Obj(L)
我们将Obj定义成接受⼀个⽔果种类列表,并将其存储在形参Obj中,这个函数遍历接受到的列表,然后打印'I like ..!'
在函数中修改列表
#⾸先定义⼀个列表,其中包含要打印的字母
letters = ['A','B','C','D']
already_letter = []
#模拟阅读每个字母,直到字母读取完毕为⽌
#将每个已经阅读过的字母转移到列表already_letter中
while letters:
current_letter = letters.pop()
print("Printing letter:"+current_letter)
already_letter.append(current_letter)
#显⽰已经读取的所有字母
print("\nThe follwing letter has been read:")
for letter in already_letter:
print(letter)
我们⾸先需要创建⼀个列表,还创建⼀个名为already_letter的空列表,每个已经阅读过的字母都存储到这个列表中,只要列表中还有字母,while循环就模拟阅读过程:从该列表中删除⼀个已经读取的字母,然后将其存储到变量current_letter中,并显⽰⼀条消息,再将该字母存储到新列表中,等到循环结束后,再打印出所有的字母。
上述程序改编版
def read_letter(letters,already_letter):
"""
读取每个字母,直到读取完毕为⽌
将读取完毕后的字母存储到新的列表中
:param letters:
:param already_letter:
:return:
"""
while letters:
current_letter = letters.pop()
#模拟读取字母的过程
print("Printing letter:" + current_letter)
already_letter.append(current_letter)
def show_already_letter(already_letter):
"""
显⽰已经阅读的所有字母
:param already_letter:
:return:
"""
print("\nThe follwing letters has been read:")
for letter in already_letter:
print(letter)
letters = ['A','B','C','D']
already_letter=[]
read_letter(letters,already_letter)
show_already_letter(already_letter)
我们定义了函数read_letter(),它包含2个形参:⼀个需要阅读字母的列表和⼀个存储已经阅读字母的列表。给定这两个列表,这个函数模拟阅读过程:将字母⼀个个阅读,然后打印,最后将其转存到存储已阅读的列表中,函数show_already_letter()主要是打印已经阅读字母列表,最后四条语句是定义⼀个列表与⼀个空列表,调⽤上⾯的两个函数。
总结
上⾯的函数中,在读取完毕之后,letters列表就编程空列表了,那么假如我们想在读取完列表后还保留该列表,该怎么办呢?
使⽤切⽚法[ : ]创建列表的副本
def read_letter(letters,already_letter):
"""
读取每个字母,直到读取完毕为⽌
将读取完毕后的字母存储到新的列表中
:param letters:
:param already_letter:
:return:
"""
while letters:
current_letter = letters.pop()
#模拟读取字母的过程
print("Printing letter:" + current_letter)
already_letter.append(current_letter)
def show_already_letter(already_letter):
"""
显⽰已经阅读的所有字母
:param already_letter:
:return:
"""
print("\nThe follwing letters has been read:")
for letter in already_letter:
print(letter)
letters = ['A','B','C','D']
already_letter=[]
read_letter(letters[:],already_letter)
show_already_letter(already_letter)
print(letters)
通过这段代码的打印结果可以看出,列表已经被复制了哦!
深⼊理解python中函数传递参数是值传递还是引⽤传递
深⼊理解python中函数传递参数是值传递还是引⽤传递 ⽬前⽹络上⼤部分博客的结论都是这样的: Python不允许程序员选择采⽤传值还是传 引⽤.Python参数传递采⽤的肯定是"传对象引⽤ ...
python禁⽌函数修改列表的实现⽅法
python禁⽌函数修改列表的实现⽅法 有时候,需要禁⽌函数修改列表.例如要对裂变进⾏修改操作,也要保留原来的未打印的设计列表,以供备案.为解决这个问题,可向函数传递列表的副本⽽不是原件:这样函数所做 ...
Python中函数传递参数有四种形式
Python中函数传递参数有四种形式 fun1(a,b,c) fun2(a=1,b=2,c=3) fun3(*args) fun4(**kargs) 四种中最常见是前两种,基本上⼀般点的教程都会涉及, ...
python_函数传递列表
'''#创建⼀个空列表,包含⼀些要打印的设计unprinted_designs = ['iphone','robot','books']completed_modles = [] #模拟打印每个设计, ...
Python 利⽤函数、列表来实现计算天数
这⼏天课程学习了列表的操作,结合以前的函数知识,编写了⼀个能够判断天数的代码 源码如下 def is_year(year): return year % 4 == 0 and year % 100 ! ...
Python Django Ajax 传递列表数据
function getTableContent(node) { event.preventDefault(); var tr = node.parentNode.parentNode; var id ...
Python sorted函数对列表排序
python函数2(返回值、传递列表...)
python函数2(返回值.传递列表...) 1.返回值 1.1.返回简单的值 #返回简单值 def get_formatted_name(first_name,last_name): "& ...
python 函数传递参数的多种⽅法
python中函数根据是否有返回值可以分为四种:⽆参数⽆返回值,⽆参数有返回值,有参数⽆返回值,有参数有返回值. Python中函数传递参数的形式主要有以下五种,分别为位置传递,关键字传递,默认值传递 ...
随机推荐
Linux uniq常⽤命令
-u 只显⽰不重复⾏.-d 只显⽰有重复数据⾏,每种重复⾏只显⽰其中⼀⾏-c 打印每⼀重复⾏出现次数.-f n为数字,前n个域被忽略.⼀些系统不识别- f选项,这时替代使⽤- n.
32-bit Assembly on x86_64 Linux (Use Nasm and ld&;gcc)
Assembly on x86_64 Linux Some instructions in Intel assembly set are invalid in x86_64 env. e.g. aaa ...
jdownload的使⽤
Oracle之⾃定义函数
数据库中函数包含四个部分:声明.返回值.函数体和异常处理. --没有参数的函数 create or replace function get_user return varchar2 is v_use ...
IEnumerable接⼝的实现
对象要实现可以迭代需IEnumerable接⼝并实现GetEnumerator⽅法.⼀下简单例⼦ public class SPEnumerable : IEnumerable { ...
N元数组的⼦数组之和的最⼤值
题⽬:有N个整数的元素的⼀维数组,求⼦数组中元素之和中最⼤的⼀组(思想:动态规划) 分析: 设该数组为array[N], 那么对于array[i]该不该在元素之和最⼤的那个⼦数组中呢?⾸先,不如假设a ...
jquery 分页控件(⼆)
上⼀章主要是关于分页控件的原理,代码也没有重构.在这⼀章会附上⼩插件的下载链接,插件主要就是重构逻辑部分,具体可以下载源⽂件看下,源代码也有注释.为了测试这个插件是能⽤的,我弄了个简单的asp ...
python之⾯向对象那点事
⼀.类与对象 1.什么是类?类,顾名思义,就是具体相同属性的同⼀类事物的统称及抽象.对象,指是就是具体的抽象类的实例 以上的说法是不是看起来有点云⾥来雾⾥去呢.没错,专业的解释总是让⼈难以理解,这就是 ...
C++ 虚函数表解析(⽐较清楚,还可打印虚函数地址)
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论