Python基础七(函数)

函数概述

  函数:组织好的、可重复使用的。杉树能提高应用的模块性和代码的重复利用性。Python提供了很多的内置函数,比如len()等等,可以自行定义函数。

函数的定义

  def 函数名(参数列表):   #函数定义

    函数体

  函数名()        #函数执行

def namePrint():   #函数定义,这是无参数函数print("我的名字是:发发")name()    #执行函数
def func2(a):    #定义了一个有形参的函数print(a)func2("123")    #执行函数需要输入形参
def func3(a,b):print(a,b)
func3(a=4,9)   #错误def func3(a,b):print(a,b)
func3(4,b=9)  #正确

默认参数传值

def func3(a,b,c='hello'):print(a,b,c)
func3(4,9)>>4 9 hellodef func3(a,b,c='hello'):print(a,b,c)
func3(4,9,0)>>4 9 0

 

获取函数文档字符串

def func1();"我是函数"    #文档字符串(只有第一行才是的)print(func1._doc_)

 不定长参数

def func3(a,b,c,*d):print(a,b,c,d)
func3('a','b','c','d','e')>>>a b c ('d', 'e')def func3(a,b,c,*d,**e):print(a,b,c,d,e)
func3('a','b','c','d','e')>>>a b c ('d', 'e') {}

必备参数

  函数定义中允许拥有多个形参,因此函数调用时,也可以包含多个实参想函数传递方式很多,通过实参和形参的顺序对应,这就是位置实参。只有位置一致才能被正确匹配。

可变对象与不可变对象的传输

  在Python 中,strings,tuples和numbers是不可更改的对象,而list、dict、和set等则是可以修改的对象。

  不可变类型:变量赋值a=5后再赋值a=10,这里实际是重新重新生成了一个int值对象10,再让a指向它,而5被丢弃,不是改变a的值,相当于新生成了a

  可变类型:变量赋值la=[1,2,3,4]后赋值la[2]=5,本身的la没有动,,只是其内部的一部分值被修改了

 函数参数参数-可变与不可变对象传输

  不可变类型:如fun(a),传递只传递a的值,没有影响a对象本身,只是修改另一个复制对象,不会影响a本身。

  可变类型:列表、字典。如fun(la),则是将la真正的传过去,修改后fun外部的la也会受影响。  

 函数return返回结束

def fun2():return 111  #结束了print(234)fun2()
print(fun2())

>>>111

 

转载于:https://www.cnblogs.com/fafalove/p/10066321.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/278756.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ios 取消交互_每日新闻摘要:Google披露了iOS“无交互”漏洞

ios 取消交互Google, through its Project Zero initiative, disclosed six vulnerabilities in iOS. In each case, a hacker could execute remote code on someone’s iPhone without any interaction by the user. Apple’s iOS 12.3 fixes five of the issues. 谷歌通过其…

Ubuntu 16.04使用timedatectl进行管理时间(UTC/CST)(服务器/桌面)

说明:16.04开始,systemd接管了系统之后就不再使用/etc/default/rcS和ntpdate、dpkg-reconfigure tzdata进行时间的管理,所以在这些地方设置是无效的,标准的写法是使用timedatectl进行管理。且经过测试hwclock操作硬件BIOS&#xf…

让你的div可拖动(手机端)

电脑端引入 jQuery UI 可以实现。而手机并没有 mousemove 等事件,所以这里采用手机事件:touchstart 和 touchmove 实现拖拽。 一、引入: 只要引入 jQuery.js 和 dragger.js(如下)即可 注:实现拖拽部分转…

5-4 全局变量

1、函数内部使用全局变量时,需要申明global 1 name 小明 # 定义一个全局变量name,并给它赋值小明2 stus [] # 定义一个空list3 # list、字典、集合4 5 def a():6 # 字符串、int、float、元组 需要声明global7 global name # 函数内部使用局部变量时&a…

黑客攻防:从入门到入狱_每日新闻摘要:游戏服务黑客被判入狱27个月

黑客攻防:从入门到入狱On Christmas day, 2013, many delighted people opened up new Xbox and Playstation gifts. That excitement turned to disappointment when they were unable to log onto game services and play. Now the hacker responsible will spend 27 months …

Self Introduction

名流时尚服饰 dior 夏季 男装 男士t恤衬衫卫衣休闲裤牛仔裤英伦 socool 搜酷女包◆任选两款正价包包邮◆5周年店庆◆5折疯抢 紫紫 超人气包邮特价创意家居收纳压缩袋饰品服饰配件包包 socool 搜酷女包◆任选两款正价包包邮◆5周年店庆◆5折疯抢 dior 风格 CF Homme 男装 男士t恤…

爬虫notes

‘’’ 爬取思路: 1、requests(url) 2、requests json 3、requests XPath 4、requests BeautifulSoup 5、selenium 6、scrapy框架 7、scrapy-redis 及分布式 OS: import os os.system(“C: && p.txt”) os.system(“p…

Android 电量优化

Android系统上App的电量消耗主要由cpu、wakelock、数据传输(流量和wifi)、wifi运行、gps、other senior组成,而耗电异常也是由于这几个模块的使用不当。 BroaddcastReceiver 为了减少应用损耗的电量,代码中需要尽量避免无用的操作代码的执行 …

如何下载手机的App Store中不再存在的应用程序

Smartphone app stores are well established at this point, and as much as we love to see new apps become available, that also means the inevitable: sometimes apps go away. Here’s what you can do if your favorites disappear. 在这一点上,智能手机应…

Q_learning简介与实例

1、算法思想 QLearning是强化学习算法中value-based的算法,Q即为在某一环境下,Q(state,action)在某一时刻的 s 状态下(s∈S),采取 动作a (a∈A)动作能够获得收益的期望,环境会根据agent的动作反馈相应的回…

吴颖二:12.27 午评 地缘政治一波未平一波又起,千三可到?

前言:圣诞节后首个交易日,金银油均走出了大行情。美国因导弹项目制裁朝鲜两名官员,地缘局势再升温黄金本周能否突破1300关口?油价刷新两年半高位后,一个重要指标却已暗示短期内或面临风险…… 朝鲜局势进一步恶化的同时…

2-1 gradle安装

因为Gradle是基于JVM的,所以一定要确保本机已经安装了JDK,我们可以通过java -version来验证一下是否已经安装了JDK。 bin目录里面是两个可执行文件,一个是Windows下面的可执行文件,还有一个就是类Unix文件系统的可执行文件。所有的…

Django中session和cookie简单的使用

一、简单的理解 session和cookie是request下的两个对象,操作他们的值就是在操作字典,设置他们的属性就是调用方法。 会话(Session)跟踪是Web程序中常用的技术,用来跟踪用户的整个会话。Web应用程序是使用HTTP协议传输…

摄影中的曝光补偿是什么?

When you use your camera in some automatic modes like Program—or one of the semi-manual modes like Aperture Priority or Shutter Speed Priority—you don’t give up total control over everything: you can still control the exposure using exposure compensatio…

ajax回调打开新窗体防止浏览器拦截方法

2019独角兽企业重金招聘Python工程师标准>>> 问题剖析: function click_fun(){ window.open("www.baidu.com");//能打开 $.ajax({ url: ${pageContext.request.contextPath}/activity/savePrizes.htm, type: post, dataType: json, data: data…

ES6学习--对象属性的遍历

ES6一共有5种方法可以遍历对象的属性。 (1)for...in for...in循环遍历对象自身的和继承的可枚举属性(不含Symbol属性)。 (2)Object.keys(obj) Object.keys返回一个数组,包括对象自身的&#xff…

多点认证wi-fi_准备使用Wi-Fi 6:认证将于2019年第三季度启动

多点认证wi-fiThe Wi-Fi Alliance already announced Wi-Fi 6 back in October. Today, it’s announcing the details of the Wi-Fi 6 certification process, which will launch in the third quarter of 2019. Expect many new Wi-Fi 6 devices later this year. Wi-Fi联盟已…

jQuery初识和常用事件(一)

文章目录一、jQuery二、入口函数三、选择器选择器小结 ★全部选择器参考 ☆四、常用的 jQuery 事件方法事件写法鼠标事件元素事件键盘事件文档/窗口事件全部事件方法参考 ☆五、效果事件显示与隐藏:hide,show,toggle淡入和淡出:fa…

nginx内嵌变量

FORWARD:http://tengine.taobao.org/nginx_docs/cn/docs/http/ngx_http_core_module.html#variables ngx_http_core_module模块支持内嵌变量,变量名与Apache服务器对应。 首先,这些变量可以表示客户端的请求头字段,诸如$http_user_agent、$ht…

pdf文档遇到了共享冲突_如何将链接共享为PDF格式的Google文档链接

pdf文档遇到了共享冲突Using Google Docs is a great way to collaborate on and share documents. Sometimes, though, you want to provide somebody with a PDF instead of an editable document. Google Docs now lets you edit your sharing link to provide a PDF. Best …