Python学习笔记——函数定义、调用

5分钟搞懂异构图注意力网络(HAN):从元路径到节点聚合的全流程解析 本文深入解析异构图注意力网络(HAN)的核心原理与实战应用,从元路径设计到多级注意力实现的全流程。HAN通过节点级和语义级双重注意力机制,有效处理包含多种节点和边类型的异构图数据,在电商推荐、学术网络分析等场景展现卓越性能。文章提供DGL实现代码和调参技巧,帮助开发者快速掌握这一强大工具。 阅读详情

一、定义一个函数

定义一个函数必须遵循如下的简单规则

  1. 函数代码块以def 关键词开头,后接函数标示符名称和圆括号()
  2. 任何传入参数和自变量必须放在圆括号中间,圆括号之间可以用于定义参数
  3. 函数的第一行语句可以选择性的使用文档字符串——用于存放函数说明
  4. 函数内容以冒号开始并且缩进
  5. return[expression]结束函数,选择性的返回一个值给掉用方,如果没有return那么就返回空

语法:
def functionname( parameters ):
   "函数_文档字符串"
   function_suite
   return [expression]

默认情况下,传递的参数值是与参数定义顺序保持一致的,其实c、java、sql等都是类似的

二、函数调用

函数调用比较简单,和其他语言类似,不赘述

三、参数传递类型


参数传递类型是按值传递还是按引用传递,其实在c、c++、C#等编程语言中也有参数传递问题,但是在python中所有传递的参数(自变量)都是按照引用传递的,也就是说在函数中改变了参数的内容,那么其他地方都会跟着改变。

四、参数的类型

Python函数可以使用的参数类型有四类:
  1. 必备参数
  2. 命名参数
  3. 缺省参数
  4. 不定长参数
(一)、必备参数
必备参数须以正确的顺序传入函数,调用时的数量必须和声明时一样。
(二)、命名参数
命名参数和函数调用关系紧密,调用方用参数的命名确定传入的参数值,可以跳过不传值的参数,或者乱序传入参数,此时python解释器能够用参数名匹配参数值
这点类似sql存储过程的调用
(三)、缺省参数
调用函数时,缺省参数的值如果没有传入,则被认为是默认值。
#!/usr/bin/python

#可写函数说明
def printinfo( name, age = 35 ):
   "打印任何传入的字符串"
   print "Name: ", name;
   print "Age ", age;
   return;

#调用printinfo函数
printinfo( age=50, name="miki" );
printinfo( name="miki" );
#以上实例输出结果:  
#Name:  miki
#Age  50
#Name:  miki
#Age  35 

(四)、不定长参数
在需要一个函数能够处理比当初声明时更多的参数的时候,这些参数叫做不定长参数。基本语法如下:
def functionname([formal_args,] *var_args_tuple ):
   "函数_文档字符串"
   function_suite
   return [expression]

加入了型号*的变量名会存放所有未命名的变量参数,当然也可以选择不多传参数,例如:
#!/usr/bin/python

# 可写函数说明
def printinfo( arg1, *vartuple ):
   "打印任何传入的参数"
   print "输出: "
   print arg1
   for var in vartuple:
      print var
   return;

# 调用printinfo 函数
printinfo( 10 );
printinfo( 70, 60, 50 );


五、匿名函数

在C#、Java中经常会用到匿名函数,Python中可以使用lambda关键词创建小型匿名函数,这种匿名函数是由于省略了def声明函数的标准步骤而得名的。
基本语法
lambda [arg1 [,arg2,.....argn]]:expression
g = lambda x : x**2
冒号前面是参数,可以多个参数,用逗号分隔,冒号右边是返回值
匿名函数适用的场所:
1. 使用Python写一些执行脚本时,使用lambda可以省去定义函数的过程,让代码更加精简。
2. 对于一些抽象的,不会别的地方再复用的函数,有时候给函数起个名字也是个难题,使用lambda不需要考虑命名的问题。
3. 使用lambda在某些时候让代码更容易理解。



MIPI DPHY接口(基于Xilinx FPGA实现)案例分析 在Xilinx FPGA实现MIPI DPHY接口的案例(包括CIS协议层)。截止目前为止,Xilinx仅在Ultrascale+及其以上版本的FPGA IO可直接支持MIPI 电平输入,其他的,都需要转换成LVDS来接收。 阅读详情

相关推荐

STM32 FOC半周期控制延时分析与硬件同步配置

在电机矢量控制(FOC)系统中,数字控制延时是影响电流环带宽、观测器收敛性与系统稳定性的核心瓶颈。其本质源于PWM更新、ADC采样与计算执行之间的时序错配,典型表现为1.5个PWM周期的相位滞后,导致滑模观测器(SMO)失效或高速振荡。通过零阶保持(ZOH)建模可量化该延时对系统相频特性的影响,并揭示其等效为0.5u(t)+0.5u(t−1)的平滑控制律。工程上突破的关键在于重构外设协同机制——以高级定时器重复计数器(RCR0)驱动中心对齐PWM的半周期更新事件,使控制量在0.5T_PWM内生效,同步触发多

flink9streamer的博客 1130

python编程 函数的定义、调用

python编程 函数的定义、调用

m0_56051805的博客 1000

uni踩坑笔记 - 离线打包调起微信分享后从微信返回APP时黑屏

apk能成功调起微信并进行分享操作,但分享完成后点击回到应用后应用出现黑屏的情况,并在约3-5秒后自动重启。

weixin_46737742的博客 5215

python中函数定义与调用的顺序的关系

python中的函数应该先定义再调用、还先调用后定义呢?或者说与顺序无关呢? 根据C/C++ 中关于函数定义与调用的关系的规定,应该是先定义后调用,但是大家都晓得python是一门格式十分自由的编程语言,会不会不受此限制呢? 不多说,看代码: 1、先定义、后调用: def multiply_square(x,y): return x*x+y*y print(multiply_sq...

xrinosvip的博客 4718

AutoModelForCausalLM 加载失败:flash_attn 缺失的三种解决方案

本文针对使用AutoModelForCausalLM加载大语言模型时因缺失flash_attn依赖而报错的问题,提供了三种实用解决方案。最推荐通过修改模型配置文件或代码动态指定注意力实现为“eager”模式来绕过检查,也介绍了临时修改库源码的应急方法,并解释了flash_attn的作用及正确安装指南。

html8的博客 269

Gazebo仿真环境下的强化学习实现

实际上利用Gazebo进行强化学习无非是环境获取上的不同,Gazebo的环境控制需要使用ROS服务进行控制,状态可以通过Gazebo进行获取,同时某些必要数据需要从话题中获取,最重要的是组织获取 的数据(通过话题等)与控制Gazebo的仿真步骤之间的组合。强化学习的手段与传统算法无异,强化学习方法最重要的是要确定动作空间、状态空间、奖励空间,这三个空间是work的前提。在笔者自己的环境中,将获取里程计的话题以及获取激光点的数据替换成为了自己的本机的仿真环境匹配的话题。

Moresweet 猫甜 6447

python调用函数

函数被定义后,本身是不会自动执行的,只有在被调用后,函数才会被执行,得到相应的结果。但是在 Python 中我们要注意一个关键点,就是Python不允许前向引用,即在函数定义之前,不允许调用该函数。

dhygvj的博客 1560

Linux内核模块开发实战指南(2025版)

2025年Linux内核模块开发迎来革命性突破!本文将从零开始手把手教你构建可动态加载的AI加速驱动模块,揭秘最新内核特性与开发技巧,更包含独家性能调优方案与跨架构移植秘籍。文末附赠价值百万的调试脚本,助你轻松突破开发瓶颈!

资深全栈架构师,乐于在 优快云 分享技术见解,与大家携手共进,共攀技术巅峰! 1806

Python函数详解:从定义到调用

定义一个函数非常简单,只需要使用def关键字即可。")这个函数名为say_hello,它不需要任何参数,只会输出一条“Hello, world!”的消息。要调用这个函数,只需要输入即可。如果你希望函数能够接受参数,可以在def语句后面加上参数列表。我们可以通过")来调用这个函数并输出传入的字符串。本文介绍了Python函数的各种用法,包括函数的定义、参数传递、返回值等方面。希望这些内容能够帮助你更好地理解和使用Python函数,从而编写出更加高效和易于维护的代码。

有求必应,有问必答(只要是我能解决的) 1059

自动驾驶预测决策规划八股

预测规划八股个人总结。

dawushixiange的博客 479

论文阅读:Universal and Transferable Adversarial Attacks on Aligned Language Models. LLM Attacks

因为“即开即用”的大型语言模型能够生成大量令人反感的内容,近期的工作集中在对这些模型进行对齐,以防止不受欢迎的生成。尽管在规避这些措施方面取得了一些成功——即所谓的针对大型语言模型(LLMs)的“越狱”——这些攻击需要大量的人类智慧,并且在实践中很脆弱。自动对抗性提示生成的尝试也取得了有限的成功。在本文中,我们提出了一种简单有效的攻击方法,可以导致对齐的语言模型生成令人反感的行为。

CSPhD-winston的博客 1414

37_Python函数定义与调用

返回值:函数执行完毕后的结果是否需要携带回去,若需要携带回去,就返回,若不需要则不返回。函数名若赋给了一个变量,那该变量就具备了和函数一样的功能,可以像函数一样调用。若在同一个文件中,出现了相同名字的函数,后面的函数会覆盖前面的函数。函数必须先定义才能调用,函数调用的位置必须放在函数定义之后。():里面放的是参数列表,参数列表中的参数可以为空。def 是 define的简写,表示定义的意思。函数定义之后,并不会直接输出,需要调用才会输出。函数体:表示该函数要实现的功能。函数调用的格式:函数名()

在科技的浪潮中,我们寻找着创新的火种,在代码的海洋里,我们编织着智慧的网。腾飞开源,就是这样一个由技术精英汇聚而成的博客平台,我们致力于分享在Java、Python、IoT和人工智能等领域的最新研究成果和实战经验。 在腾飞开源的博客上,你会看到紧跟技术前 1020

【WRF数据准备】土地利用类型分类标准:USGS+MODIS IGBP 21

【WRF数据准备】土地利用类型分类标准:USGS+MODIS IGBP 21

WW、forever的博客 4474

python3定义函数_Python3学习笔记12-定义函数及调用

函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段,能提高应用的模块性,和代码的重复利用率Python提供了许多内建函数,比如print()。也可以自己创建函数,这被叫做用户自定义函数。定义一个函数函数代码以def开头,后接着函数名和圆括号()传入的参数和自变量必须放在圆括号中间,圆括号中可以定义参数函数的第一行语句可以使用字符串来当做函数的文字说明函数的内容以冒号开始,并且缩进re...

weixin_39977586的博客 293

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

Python学习笔记三_函数定义、函数调用、函数类型

Python学习笔记基础三_函数函数定义函数的调用 函数定义 定义:函数表示一个功能代码块 作用:代码可以重复使用,降低代码重复率 语法格式: def 函数名( 形式参数[可选] ): "函数_文档字符串" 功能代码 return [表达式] 举例说明: def test(): ''' 可以写函数的功能,函数的参数说

weixin_43817580的博客 1675

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

python调用class定义的函数_【学习笔记】Python思维课2(定义和调用函数)

点击上方蓝字,关注我吧课 程 表函数的作用编写代码要不断追求简洁和易读。换句话说,我们要尽量避免写重复的代码,少复制粘贴,也就是所谓的DRY原则——Don't Repeat Yourself。前面学习过的循环是减少代码重复的一种手段,那么接下来要学习的函数则是Python里增强代码重用性最有力的工具,它的定义是:什么意思呢?我们之前所写的代码都是立即运行且只能被执行一次,而函数可以让我们...

weixin_39628063的博客 505

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

Python3学习笔记12-定义函数及调用

函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段,能提高应用的模块性,和代码的重复利用率Python提供了许多内建函数,比如print()。也可以自己创建函数,这被叫做用户自定义函数。定义一个函数函数代码以def开头,后接着函数名和圆括号()传入的参数和自变量必须放在圆括号中间,圆括号中可以定义参数函数的第一行语句可以使用字符串来当做函数的文字说明函数的内容以冒号开始,并且缩进re...

梦忆安凉的博客 5312

python调用自定义函数中的变量_Python学习笔记之变量、自定义函数用法示例

本文实例讲述了Python变量、自定义函数用法。分享给大家供大家参考,具体如下:不管你学什么编程语言都逃不出如下套路:1、怎么定义变量?是否有数据类型,怎么在控制台输出?2、怎么定义函数?定义类?面向对象的写法是怎样的?3、如何调用外部类或函数?4、如何读写文件?网络编程?5、如何与数据库交互?6、如何和各种第三方库交互?7、有什么好用的框架?变量name="jack" #定义变量print(na...

weixin_39867893的博客 886

r 函数返回多个值_Python3学习笔记11定义函数及调用

捏脸求关注~快,关注这个公众号一起涨姿势函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段,能提高应用的模块性,和代码的重复利用率Python提供了许多内建函数,比如print()。也可以自己创建函数,这被叫做用户自定义函数。定义一个函数函数代码以def开头,后接着函数名和圆括号()传入的参数和自变量必须放在圆括号中间,圆括号中可以定义参数函数的第一行语句可以使用字符串来当...

weixin_39882948的博客 208

python一个函数调用另一个函数里面的值_Python学习笔记(10)-函数之函数定义、调用、参数、返回值、嵌套...

函数函数定义将实现某个独立功能的代码组合在一起,命一个名字,再需要使用这段代码时通过所命的名字来使用,就叫做函数使用函数的好处:1、将代码模块化(升级或修改某一个功能时只更新相应函数即可)2、方便代码重复使用(不需要多次重复编写代码只需多次调用即可)函数定义的格式:def 函数名():代码块如定义一个打印名片函数:注意:1、函数名命名规则与变量命名规则一致,但一般不使用大驼峰命名方式2、定义函数只...

weixin_39631689的博客 1889

Python学习笔记(四):函数的定义和调用

1.定义函数和调用函数 具体用法如下代码所示: ''' 1.定义函数和调用函数 ''' # 定义一个函数,声明两个形参 def my_max(x, y) : # 定义一个变量z,该变量等于x、y中的最大值 z = x if x > y else y # 返回变量z的值 return z # 定义一个函数,声明一个形参 def say_hi(name) : print("=====正在执行say_hi()函数=====") return "你好,"

我们仨 943

Python学习笔记(9):函数调用与定义

python一定程度上和matlab很类似,存在较多的内置函数,供用户直接调用。通常来说,调用函数需要知道函数的名称和需要传入的参数,比如绝对值函数abs,可以在交互式命令行通过help(abs)查看abs函数的帮助信息。 调用abs函数:>>>abs(100) >100 >>>abs(-5) >5调用函数时,如果传入参数不对,系统会报错。 数据类型转换 python内置的常用函数通常包括数据

qq_21089969的博客 676

03-python学习笔记:函数-调用与定义

03-python学习笔记:函数-调用与定义

u010406940的博客 608

python学习笔记:函数定义与调用、函数参数与返回值、函数嵌套(一)

目录一、函数的定义与调用1.1、定义与调用1.2、函数文档二、函数的参数与返回值2.1、函数的参数2.2、函数的返回值三、函数类型四、函数嵌套使用五、参考资料 一、函数的定义与调用 1.1、定义与调用 定义:具有独立功能的代码块组成的一个模块 定义格式: def 函数名(): 代码 调用: 函数名() 示例: def add(): a = 10 b = 20 print("这两个数的和是%s" % (a+b)) add() """ 运行结果为: 这两个数的和是30 """ 注意

npc666666的博客 1123

python学习笔记(七)函数定义与调用

1、给函数起“别名” >>> a = abs >>> a(-1) 1 2、函数的定义 使用def语句定义一个函数 def my_abs(x): if x > 0: return x else: return -x 3、调用函数 >>> from abstest impor...

arris1992的博客 226

python学习笔记--函数定义、调用与默认参数

刚学习了一些python语法的基础知识,包括循环等,发现其语法基础具有普适性,如break,continue等的作用,就不写了。 主要写写对于python函数的学习和理解。 python函数定义 在Python中,定义一个函数要使用def语句,依次写出函数名、括号、括号中的参数和冒号:,然后,在缩进块中编写函数体,函数的返回值用return语句返回。 !!!注意冒号需要强调,这与C的

通俗易懂的 AI 技术 736
上一篇: Python学习笔记——Python开发中的控制语句
下一篇: Python学习笔记——print语句用法总结
hack8
博客等级 码龄18年 109粉丝 128原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值