python开发之路---第二章之--基本函数介绍

1、函数: 是指一组语句的集合,通过一个名字(函数名)封装起来,要想执行这个函数,只需要调用函数名即可

优点:

# 减少重复代码

# 使程序可扩展

# 使程序易维

栗子1:

1 def sayhi():
2     print (‘hello‘)
3
4 sayhi()

## sayhi 是指向函数的内存地址,加了() 就是执行这个函数

# 如下又是一种,这个是可以给函数插入参数,参数可以根据调用时传入的参数的不同,来决定内部执行代码的流程

eg:(1)

1 def sayhi(name):
2     print(‘hello‘,name)
3
4 say(‘feifei‘)

eg:(2)

1 def cale(x,y):
2      res = x ** y
3      print(res)
4
5 cale(5,10)
6 cale(2,10)

#形式参数和实参

1 def cale(x,y)  ## 形参,只在函数内部有效,只有在调用并分配值得时候,才会分配内存空间,并在调用结束后,就释放内存
2     res= x ** y
3     return res
4
5 c = cale(a,b)  ## 实参
6 print(c)

##默认参数,默认参数必须放在位置参数的后面(必须必须!!!)

1 def stu_register(name,age,course,country=‘CN‘,):  ##country就是默认参数,默认参数必须放在最后面
2     print(‘-----注册学生信息-----‘)
3     print(‘姓名‘,name)
4     print(‘age‘,age)
5     print(‘国籍‘,country)
6     print(‘课程‘,course)
7
8
9 stu_register(‘feifei‘,23,‘中文‘)

## 关键参数,不想按顺序的时候就用关键参数,关键参数必须放在位置参数的后面

def stu_register(name,age,course,country=‘CN‘,):
    print(‘-----注册学生信息-----‘)
    print(‘姓名‘,name)
    print(‘age‘,age)
    print(‘国籍‘,country)
    print(‘课程‘,course)

stu_register(‘王大哥‘,course=‘PYthon‘,age=22,)

##j绝对不可以这样

## stu_register(‘王大哥‘,course=‘PYthon‘,23)

## 非固定参数,如果参数中出现了*形式参数,传递的参数就可以不再是固定参数,会把传入的参数打包称为一个元祖,发送给*agrs,

def send_alert(msg,*agrs)   ## 一个※ 代表可以传入无限数量的参数都代表*usr
    for u in users:    print(‘我要发信息给‘,u)

##方式一参数传递方式:send_alert(‘我要发信息‘,‘alex’,‘abc‘)

##方式二参数传递方式:*号后手动加上‘[ ]‘
send_alert(‘我要发信息‘,*[‘alex’,‘abc‘])

## 非固定参数2, 2个*的形式参数 **kwargs 接受的是关键字参数

def func(name,*args,**kwargs):
    print(name,args,kwargs)

func(‘pengfei‘,22,‘tesla‘,‘1000w‘)
func(‘pengfei‘,22,‘tesla‘,‘1000w‘,addr=‘山东‘,num=‘12442323‘)

。。。。。。待续

原文地址:https://www.cnblogs.com/LoveElsa/p/10247666.html

时间: 2024-10-11 15:36:43

python开发之路---第二章之--基本函数介绍的相关文章

python开发之路---第二章之--函数的作用域

## Python中一个函数就是一个作用域 age = 18 def func1(): age = 73 def func2(): print(age) return func2 val = func1() val() # 代码定义完成后,作用域就生成了,作用域向上查找 原文地址:https://www.cnblogs.com/LoveElsa/p/10276820.html

python开发之路---第二章之--文件操作

'''1.r ## 是只读模式2.w ## 创建新文件并覆盖写3.rb ## 二进制方式读4.wb ## 二进制方式写5.ab ## 追加写6.w+ ## 写读模式,支持写完后读取写的内容7.r+ ## 读写模式,读完之后,再写(追加)8. ''' '''f.tell() # 返回当前文件读取到的光标字节的位置f.seek(5) # 强制把光标调整到指定字节位置,如果从这个位置写,后面有内容的话,会覆盖写f.flush() # 强制把内容从内存刷到硬盘中f.readline() ## 每次读一行

python开发之路---第二章之--嵌套函数

1 def func1(): 2 print('alex') 3 4 def func2(): 5 print('eric') # 1. func1() # 加了() 就代表执行这个函数, 执行结果是'alex' 1 ef func13(): 2 print('alex') 3 4 def func23(): 5 print('eric') 6 7 func23() # 1.func1() # 这里执行结果就是2个都答应了,alex和eric # 总结# 1.函数内部可以再次定义函数 # 2.函

python开发之路---第二章之--函数之高阶函数

## 一个函数的变量为另一个函数,这种函数就称为高阶函数 ## return 一个函数名也可以称为高阶函数 def func(x,y): return x+y def cale(x): return x f = cale(func) a = f(4,5) print (a) ## 这里的实际上执行的是func的函数,所以不传参数的话会报错,必须传入2个参数, 原文地址:https://www.cnblogs.com/LoveElsa/p/10280029.html

python开发之路---第二章之--函数之内置方法

msg = '我是一开始的内容' f = open('print_test','w') print(msg,'我是后面的内容',sep='-->',end='!!!',file=f) ## print的方法,将一段字符串,直接加入到文件内,并且在字符串后面使用sep自定义插入符号,以及在结尾处使用end插入自定义符号 ## 默认print方法打印后会换行,是因为end的默认值是\n #callable()  # 判断一个对象是否可调用 ##forzenset()  # 将一个集合变为不可变 #

Android开发艺术探索——第二章:IPC机制(上)

Android开发艺术探索--第二章:IPC机制(上) 本章主要讲解Android的IPC机制,首先介绍Android中的多进程概念以及多进程开发模式中常见的注意事项,接着介绍Android中的序列化机制和Binder,然后详细的介绍Bundle,文件共享,AIDL,Messenger,ContentProvider和Socker等进程间通讯的方法,为了更好的使用AIDL进行进程间通讯,本章引入了Binder连接池的概念,最后,本章讲解各种进程间通信方式的优缺点和使用场景,通过本章,可以让读者对

Android开发艺术探索——第二章:IPC机制(中)

Android开发艺术探索--第二章:IPC机制(中) 好的,我们继续来了解IPC机制,在上篇我们可能就是把理论的知识写完了,然后现在基本上是可以实战了. 一.Android中的IPC方式 本节我们开始详细的分析各中跨进程的方式,具体方式有很多,比如可以通过在Intent中附加extras来传递消息,或者通过共享文件的方式来共享数据,还可以采用Binder方式来跨进程通信,另外,ContentProvider天生就是支持扩进程访问的,所以通过Socket也可以实现IPC,上述的各种方法都能实现I

第二章:MySQL介绍与安装

第二章:MySQL介绍与安装 为什么选择MySQL mysql性能卓越,服务稳定,很少出现异常宕机 mysql开源免费,无版权制约,自主性及使用成本低 产品耦合度,mysql支持多种操作系统,支持多开发语言,特别是php 技术积累,庞大的活跃的社区, 软件体积小,安装简单,易于维护 MySQL数据库分类与版本升级 MySQL官网http://www.mysql.com/,MySQL版本采用双授权政策,和大多数开源产品路线一样,分为社区版和商业版,并且这两个版本又分别分成四个版本依次发布,Alph

Python基础教程(第二章 列表和元组)

本文内容全部出自<Python基础教程>第二版,在此分享自己的学习之路. ______欢迎转载:http://www.cnblogs.com/Marlowes/p/5293195.html______ Created on Xu Hoo 本章将引入一个新的概念:数据结构.数据结构是通过某种方式(例如对元素进行编号)组织在一起的数据元素的集合,这些数据元素可以是数字或者字符,甚至可以是其他数据结构.在Python中,最基本的数据结构是序列(sequence),序列中的每个元素被分配一个序号——即