写在前面

文章目录

  • 函数
    • 一. 基本代码结构
    • 二. 返回多个结果
    • 三. 序列解包
    • 四. 链式赋值
    • 五. 参数
      • 1. 必须参数
      • 2. 实参和形参
      • 3. 关键字参数
      • 4. 可变参数
      • 5. 关键字可变参数
      • 6. 变量作用域
      • 7. 全局变量
  • 专栏目录

函数

一. 基本代码结构

def funcname(parameter_list):pass# 参数列表可以没有
# 可return

二. 返回多个结果

def damage(skill1,skill2):damage1 = skill1 * 2damage2 = skill2 * 3 + 10return damage1,damage2damages = damage(3,6)
# damages -> (6,28)
# 返回为元组类型(tuple)# 或,序列解包skill1_damage, skill2_damage = damage(3,6)

三. 序列解包

a = 1
b = 2
c = 3# 等同于a,b,c = 1,2,3

了解以上知识点后,我们可以运用序列解包

a = 1,2,3
b,c,d = a# 则 b=1 c=2 d=3,注:解包的变量数目应与包数目相等

四. 链式赋值

a,b,c = 3,3,3# 等同于a=b=c=3

五. 参数

1. 必须参数

函数的参数列表中定义的参数为必须参数

2. 实参和形参

实参 -> 为函数调用时传入的参数

形参 -> 函数定义时设置的参数

3. 关键字参数

关键字参数可以指定为哪个形参赋值

def add(x,y):return x+yadd(y=3,x=2)

4. 可变参数

方法的参数数量为可变的

def demo(*param):print(param)demo(1,2,3,4,5)
# param为元组类型a = (1,2,3)
demo(*a)
# 输出为(1,2,3)demo(a)
# 输出为((1,2,3))

5. 关键字可变参数

def city_temp(**param):for key,value in param.items(): print(key+':'+value)
# 字典需要调用items()拿到对应的值city_temp(bj='23c',xm='33c',sh='34c')# 如果传入字典
a = {'bj':'23c','xm':'33c','sh':'34c'}
city_temp(**a)

6. 变量作用域

需要注意的一点是:

在方法内,for循坏的外部可以调用for循环内部的变量。这一点有别于Java,因为Python没有块级作用于的概念,for循环中的变量将被视为和函数的作用域一致

7. 全局变量

如果在方法内部想要定义全局变量怎么办?

def demo():global cc = 2demo()
print(c)> 2

全局变量,在被导入其他模块(其他python文件)也可以使用


专栏目录

传送门

Python(9):函数相关推荐

  1. 【Python】函数图像绘制:二维图像、三维图像、散点图、心形图

    [Python]函数图像绘制:二维图像.三维图像.散点图.心形图 所有需要用的包 二维图像 三维图像 散点图绘制 心形图绘制 所有需要用的包 from mpl_toolkits.mplot3d imp ...

  2. 技术图文:Python 匿名函数 VS. C# Lambda表达式

    背景 前段时间在知识星球上立了一个Flag,至少写10篇关于 Python,Matlab 和 C# 对比的总结. 这是第 2 篇,从定义和应用两个角度来对比 Python 的匿名函数 与 C# 的La ...

  3. Python divmod() 函数

    Python divmod() 函数 python divmod() 函数把除数和余数运算结果结合起来,返回一个包含商和余数的元组(a // b, a % b). 函数语法 divmod(a, b) ...

  4. python参数传递方法_深入理解python中函数传递参数是值传递还是引用传递

    python 的 深入理解python中函数传递参数是值传递还是引用传递 目前网络上大部分博客的结论都是这样的: Python不允许程序员选择采用传值还是传 引用.Python参数传递采用的肯定是&q ...

  5. python中函数包括标准库函数吗_Python语言和标准库(第二章:函数)

    a-如何创建函数. b-给出一些指导原则,帮助思考如何创建和组织程序以使用函数. c-如何编写函数,使随后可以询问它们的工作方式和实现的功能. 2.1将程序放在单独的文件里 为了更加方便,从现在开始, ...

  6. c int转字符串_【C++实现python字符串函数库】字符串匹配函数startswith与endswith

    [C++实现python字符串函数库]字符串匹配函数startswith与endswith 这两个函数用于匹配字符串的开头或末尾,判断是否包含另一个字符串,它们返回bool值.startswith() ...

  7. python中函数和方法的区别?Python编程判断当前获取的对象是函数还是方法

    python中函数和方法的区别?Python编程判断当前获取的对象是函数还是方法 目录

  8. python log函数怎么打_Python的log日志功能及设置方法

    python log函数怎么打_Python的log日志功能及设置方法_Elaine要当律师的博客-CSDN博客

  9. Python staticmethod() 函数

    Python staticmethod() 函数 正在上传-重新上传取消​ Python 内置函数 python staticmethod 返回函数的静态方法. 该方法不强制要求传递参数,如下声明一个 ...

  10. python基础--函数

    #python中函数的定义:函数是逻辑结构化和过程化的一种编程方法,用来实现某些特定的功能.#python中函数简单定义的方法# def test(x):# "this is new fun ...

最新文章

  1. [学习笔记]模拟电路技术
  2. 应用(指定)进程创建的时候创建Application
  3. JHipster入门,第2部分
  4. 绘制半圆_Android Canvas 绘制小黄人
  5. C/C++:Windows编程—Windows RPC 传递自定义数据类型、自定义数据类型数组、指针数组
  6. pssh批量远程管理
  7. java 场景处理,最适合使用RxJava处理的四种场景
  8. Notice: Undefined offset 的解决方法
  9. ToneBoosters Plugins Bundle for Mac(音频效果器插件包)
  10. 郑志勇:谁是中国最牛指数基金供应商(规模统计与产品点评)
  11. HTML5+CSS期末大作业:个人网站设计——响应式个人简历介绍网页(5页) HTML+CSS+JavaScript
  12. 梅特勒托利多xk3124电子秤说明书_托利多电子秤完整操作手册
  13. webrtc源码分析 nack详解
  14. 什么是Express框架
  15. 模板编码方法(template method)
  16. 2021年氯化工艺复审考试及氯化工艺作业模拟考试
  17. android 汉字 unicode编码,Android解析UniCode编码
  18. 记录yarn安装全局包,无法使用的问题:‘yo‘ 不是内部或外部命令,也不是可运行的程序或批处理文件
  19. django之十一--开发一个简单的醉得意菜单和人均支付金额查询页面
  20. java 内存 pdf_jvm内存模型高清版.pdf

热门文章

  1. Golang 使用Protocol Buffer 案例
  2. 从基础到高级讲解Kafka
  3. Showing multiple lines on a single chart in Node-RED
  4. 机器学习基础——支持向量机
  5. 巡逻机器人用应用的pc端车牌识别
  6. React-Native学习笔记
  7. IT 企业稿阿米巴 失败
  8. 【转】Linux 静态库与共享库的使用
  9. 栈,堆,值类型,引用类型,装箱,拆箱 .NET中 6个重要的概念
  10. SQLite的基本使用一