首页 > 编程语言 >python函数

python函数

时间:2022-11-12 20:12:44浏览次数:44  
标签:函数 形参 python 列表 导入 实参 默认值

一、定义函数

下面是一个打印问候语的简单函数,名为greet_user()

1、向函数传递信息

通过在这里添加username ,就可让函数接受你给username 指定的任何值。现在,这个函数要求你调用它时给username 指定一个值。

 

二、传递实参

1、位置实参

Python必须将函数调用中的每个实参都关联到函数定义中的一个形参。为此,最简单的关联方式是基于实参的顺序。这种关联方式被称为位置实参

 

2、关键字实参

关键字实参 是传递给函数的名称—值对。你直接在实参中将名称和值关联起来了,因此向函数传递实参时不会混淆 关键字实参让你无需考虑函数调用中的实参顺序,还清楚地指出了函数调用中各个值的用途

 

3、默认值

编写函数时,可给每个形参指定默认值 。在调用函数中给形参提供了实参时,Python将使用指定的实参值;否则,将使用形参的默认值。 因此,给形参指定默认值后,可在函数调用中省略相应的实参。使用默认值可简化函数调用,还可清楚地指出函数的典型用法 使用默认值时,在形参列表中必须先列出没有默认值的形参,再列出有默认值的实参

 

 

 三、返回值

1、返回简单值

下面来看一个函数,它接受名和姓并返回整洁的姓名

 

2、让实参变成可选的

3、返回字典

 

 

四、传递列表

 

1、在函数中修改列表

将列表传递给函数后,函数就可对其进行修改。在函数中对这个列表所做的任何修改都是永久性的,这让你能够高效地处理大量的数据

 

2、禁止函数修改列表

有时候,需要禁止函数修改列表。例如,假设像前一个示例那样,你有一个未打印的设计列表,并编写了一个将这些设计移到打印好的模型列 表中的函数。你可能会做出这样的决定:即便打印所有设计后,也要保留原来的未打印的设计列表,以供备案。但由于你将所有的设计都移出 了unprinted_designs ,这个列表变成了空的,原来的列表没有了。为解决这个问题,可向函数传递列表的副本而不是原件;这样函数所做 的任何修改都只影响副本,而丝毫不影响原件。 要将列表的副本传递给函数,可以像下面这样做 function_name(list_name[:]) 

 

五、传递任意数量的实参

 

形参名*toppings 中的星号让Python创建一个名为toppings 的空元组,并将收到的所有值都封装到这个元组中

1、结合使用位置实参和任意数量实参

如果要让函数接受不同类型的实参,必须在函数定义中将接纳任意数量 实参的形参放在最后。Python先匹配位置实参和关键字实参,再将余下 的实参都收集到最后一个形参中

 

2、使用任意数量的关键字实参

有时候,需要接受任意数量的实参,但预先不知道传递给函数的会是什么样的信息。在这种情况下,可将函数编写成能够接受任意数量的键— 值对——调用语句提供了多少就接受多少。一个这样的示例是创建用户简介:你知道你将收到有关用户的信息,但不确定会是什么样的信息。 在下面的示例中,函数build_profile() 接受名和姓,同时还接受任意数量的关键字实参。

 

形参**user_info 中的两个星号让Python创建一个名为user_info 的空字典,并将收到的所有名称—值对都封装到这个字典中

六、将函数存储在模块中

函数的优点之一是,使用它们可将代码块与主程序分离。通过给函数指定描述性名称,可让主程序容易理解得多。你还可以更进一步,将函数 存储在被称为模块 的独立文件中,再将模块导入 到主程序中。import语句允许在当前运行的程序文件中使用模块中的代码。 1、导入整个模块

 

 2、导入特定的函数

你还可以导入模块中的特定函数,这种导入方法的语法如下 from module_name import function_name 通过用逗号分隔函数名,可根据需要从模块中导入任意数量的函数: from module_name import function_0, function_1, function_2 若使用这种语法,调用函数时就无需使用句点。由于我们在import 语句中显式地导入了函数make_pizza() ,因此调用它时只需指定其名称

3、使用as 给函数指定别名

如果要导入的函数的名称可能与程序中现有的名称冲突,或者函数的名 称太长,可指定简短而独一无二的别名 ——函数的另一个名称,类似 于外号。要给函数指定这种特殊外号,需要在导入它时这样做

4、使用as 给模块指定别名 

 5、导入模块中的所有函数

使用星号(* )运算符可让Python导入模块中的所有函数

 

 

 

 

 

 

 

 

   

 

 

 

 

 

 

 

 

 

 

 

标签:函数,形参,python,列表,导入,实参,默认值
From: https://www.cnblogs.com/buffaloes/p/16883832.html

相关文章

  • Python字符串操作
    Python字符串操作1.*字符串的常用操作1.*.&访问字符串中的值Python访问子字符串变量,可以使用方括号来截取字符串。与列表的索引一样,字符串索引从0开始。字符串的索引......
  • <二>掌握构造函数和析构函数
    构造函数和类名相同,可以带参数,参数可以有多个构造函数执行完成后,内存开辟完成,同时可以完成初始化工作.析构函数~Test();析构函数可以自己调用,析构函数调用后,对......
  • Python3.8多进程共享内存之Numpy数组
    在利用python处理数据的时候,想要充分发挥CPU的算力,可以选择利用多进程来实现。如果子进程内存占用较大的话,往往很难多开进程,如果不涉及对内存的写入操作,那么多个子进程共享......
  • 2.IPython 的使用技巧
    二.  IPython的使用技巧通过命令来获得帮助文档   1.使用help()#示例help(len)  2.使用?#示例len?  3.shift+tab 查看文档#示例len()......
  • Python2升级Python3改造手法
    Python3.x不兼容Python2.x,但这两个在语法层面差别不大。Python3.x做了部分修改,但大体语法与Python2.x相似,Python3.x的使用者可以轻松阅读Python2.x编写的代码。本节将......
  • Java 函数式编程 stream流(二)
     Java函数式编程stream流(一)1. Stream和parallelStreamstream是顺序流,由主线程按顺序对流执行操作,而parallelStream是并行流,内部以多线程并行执行的方式对流进......
  • Python字典基本操作
    Python字典基本操作与列表和元组有所不同,字典是另一种可变容器模型,且可存储任意类型的对象。下面将学习字典的基本操作。1.*字典常用的基本操作字典的对象使用大括号{}......
  • Python元组基本操作
    Python元组基本操作与列表相比,元组对象不能修改,同时元组使用小括号、列表使用方括号。元组创建很简单,只需要在括号中添加元素并使用逗号隔开即可。1.*元组对象的常用操......
  • python Python+ffmpeg 实现视频压缩
    一,ffmpeg应用场景:视频文件过大,需要进行压缩,或降低分辨率,可以使用ffmpeg工具实现。已验证超过2GB大小的视频文件,可以正常压缩。使用方法:可参考如下几篇博文:1.https://w......
  • 双11,用Python爬取4000多条笔记本电脑的销售数据并分析
    双11,用Python爬取4000多条笔记本电脑的销售数据并分析2022年,大部分电子产品的销量都在下滑,比如手机,一方面,产品的创新和提升不足,另一方面,大部分人更愿意把钱存起来,降低生活中......