函数:逻辑结构化和过程化的一种编程方法

面向对象---》类 class

面向过程---》过程 def

函数编程---》函数def

import time
def logger():
time_format='%Y-%m-%d %X'#格式化时间
timecurrent=time.strftime(time_format)
with open("log.txt","a+",encoding="utf-8") as f:
f.write("%s hello.............\n"%(timecurrent))
def test1():
print("this is test1")
logger()
def test2():
print("this is test2")
logger()
def test3():
print("this is test3")
logger() test1()
test2()
test3(

  函数的优点:

1.代码重用

2.一致性

3.可扩展性

def test1():
print("in this is test1") def test2():
print("in this is test2")
return 1
print("return 以后")#只要先返回return 这行就不执行 def test3():
print("in this is test3")
return 0,"hello",["apple","banner"],{"name":"hunter"}
x=test1()
y=test2()
z=test3() print(x)#返回none
print(y)#返回一个object
print(z)#返回一个元组

  

def test(x,y,z):
print(x)
print(y)
print(z) test(1,z=2,y=3)#如果有传递的参数既有位置参数又有关键参数,必须是位置参数优先。

 

def test(*args):#参数组 接受n个位置参数,转换成元组的形式
print(args)#一个元组 test(1,2,3,4,5)
test(*[1,2,3,4,5,6]) def test1(x,*args):#位置参数,参数组
print(x)
print(args) test1(1,2,3,4,5) def test2(**kwargs):#kwargs 把n个关键字参数 转换成字典的形式
print(kwargs)
test2(name="hunter",age=18,sex="man")
test2(**{'name':'hunter','age':20}) #位置参数不能写在关键参数后面 #大融合
def test3(name,age=18,*args,**kwargs):
print(name)
print(age)
print(args)
print(kwargs) test3("hunter",27,1,2,3,4,sex='man')#位置参数,关键参数,

  注意:位置参数不能放在关键参数后面,*args是n个位置参数转换为元组,**kwargs是n个关键参数转换为字典。

 

python自学第7天,函数,参数的更多相关文章

  1. python通过装饰器检查函数参数的数据类型的代码

    把内容过程中比较常用的一些内容记录起来,下面内容段是关于python通过装饰器检查函数参数的数据类型的内容. def check_accepts(f): assert len(types) == f. ...

  2. python 装饰器修改调整函数参数

    简单记录一下利用python装饰器来调整函数的方法.现在有个需求:参数line范围为1-16,要求把9-16的范围转化为1-8,即9对应1,10对应2,...,16对应8. 下面是例子: def fo ...

  3. Python学习总结18:函数 参数篇

    1. 判断函数是否可调用 >>> import math >>> x = 1 >>> y = math.sqrt >>> cal ...

  4. Python学习札记(十三) Function3 函数参数二

    参考:函数参数 Note A.关键字参数: 1.关键字参数:**kw 可变参数允许你传入0个或任意个参数,这些可变参数在函数调用时自动组装为一个tuple.而关键字参数允许你传入0个或任意个含参数名的 ...

  5. python 零散记录(六) callable 函数参数 作用域 递归

    callable()函数: 检查对象是否可调用,所谓可调用是指那些具有doc string的东西是可以调用的. 函数的参数变化,可变与不可变对象: 首先,数字 字符串 元组是不可变的,只能替换. 对以 ...

  6. Python全栈之路----函数----参数

    参数可以让你的函数更灵活,不只能做死的动作,还可以根据调用时传参的不同决定函数内部的执行流程. 形参:只有在被调用时才分配内存单元,在调用结束时,即可释放所分配的内存单元.因此形参只在函数内部有效.函 ...

  7. python之路---09 初始函数 参数

    二十七.初始函数 1.函数: 对代码块和功能的封装和定义 2.格式及语法 def  函数名()           #  定义 函数体 函数名()              #  调用 3.    r ...

  8. python可变容器类型做函数参数的坑

    def extendList(val, list=[]): # []默认参数的只指向一个地址 list.append(val) return list list1 = extendList(10) l ...

  9. Python自学:第二章 使用函数str( )避免类型错误

    age = 23 message = "Happy " + str(age) + "rd Birthday" print(message) 输出位 Happy ...

  10. [Python自学] day-21 (1) (请求信息、html模板继承与导入、自定义模板函数、自定义分页)

    一.路由映射的参数 1.映射的一般使用 在app/urls.py中,我们定义URL与视图函数之间的映射: from django.contrib import admin from django.ur ...

随机推荐

  1. Linux上不了网的几个排查点

    下面是所有系统通用排查流程: 1.先ping网关: 例ping 192.168.12.1: 如果能通说明本地IP配置和本地到路由器的链路未发生问题. 如果不通需要检查本地设置和本地到路由的网线连接状态 ...

  2. 事件冒泡以及onmouseenter 和 onmouseover 的不同

    1. onmouseenter onmouseenter 事件在鼠标指针移动到元素上时触发. 该事件通常与 onmouseleave 事件一同使用, 在鼠标指针移出元素上时触发. onmouseent ...

  3. 统计随机数及临界值Web Service接口

    (2017-02-04 银河统计) 统计函数API概念   API(Application Programming Interface,应用程序编程接口)是一些预先定义的函数,目的是提供应用程序与开发 ...

  4. vue-i18n安装配置,运行

    需求:根据浏览器语言自动切换语言 1.安装vue-i18n, yarn安装 $ yarn add vue-i18n npm安装 $ npm install vue-i18n 2.导入语言包 src下创 ...

  5. Vue基础进阶 之 过渡效果

    进入/离开过渡效果:Vue在插入.更新或移除DOM时,可以设置一些动画效果: 如何使用过渡效果:利用<transition></transition>组件将需要应用的过渡效果的 ...

  6. js 过滤器

    ,,]; ary[] = ; ary.filter(function(x) { return x === undefined; }); // A. [undefined x 7] // B. [0, ...

  7. js在线富文本插件的考虑

    使用之前需要考虑的点: 1需要插件,是否需要很多的插件,还是说简单的那些功能就行了. 2界面考虑,看你喜欢那个界面了. 3图片是否需要上传图片服务器. 4文档如果为英文是否会影响开发. 5支持浏览器类 ...

  8. C# wnform 请求http ( get , post 两种方式 )

    1.Get请求 string strURL = "http://localhost/WinformSubmit.php?tel=11111&name=张三";System. ...

  9. ionic调用手机系统的拨打电话

    android调用如下: 在config.xml中添加 <access origin="tel:*" launch-external="yes" /> ...

  10. eolinker 安装时遇到的坑

    Access denied for user 'root'@'localhost' (using password:YES) 从githup 上下载的代码,直接把release 里的文件发布到服务器上 ...