一.函数的定义

def 函数名():

函数体

return 返回值1 返回值2

二.函数的调用

函数名()

实现答应返回值:print 函数名()

总结:

定义函数时,函数不执行

定义函数时,函数才执行

1.有参数的函数

(1)必选参数

#形式参数

def add(x,y)

print x + y

#实参,x=1,y=2

add(1, 2)

3

(2)默认参数

def mypow(x, y=2):

print x**y

mypow(2)

(3)可变函数

#形式参数

#args可以改为其他变量名;

def add(*args):

#args实质上是一个元组;##print args

#        sum = 0

#        for i in args:

#                sum += i

#        print sum

add(1, 2, 3, 4, 5, 6)

(4)关键字参数

#kwargs可以改为其他变量名;

#def inuser(name, age, **kwargs):

##kwargs实质上是一个字典;

#print name, age, kwargs

inuser("user1" 12 city="xi'an" brith="20180102"

如果必选参数, 默认参数, > 可变参数, > 关键字参数

```;

(5)返回值

#函数中如果没有返回值return时,默认返回值None;

def add(x,y):

return x+y

print add(1,2)

3

None

#返回多个值

def fun(*args):

"""

返回最大值和最小值:param args::return:"""#实质上python只能返回一个值;#间接通过元组返回多个值;return max(args), min(args)

print fun(23, 21, 1, 8,12)

/usr/bin/python2.7 /root/PycharmProjects/untitled/file/retu.py

(23, 1)(5)函数作用域1)global关键字必须先声明,再赋值;#全局变量

num = 1

def fun():

num = 5

fun()

print num

1

num = 1

def fun():

global num    #global声明num为全局变量

num = 5       #局部变量

fun()

print num

5三.高级特性1.切片2.迭代(1)是否可以for循环遍历的对象;(2)isinstance判断是否可迭代;

In [1]: from collections import Iterable

In [2]: isinstance('hello', Iterable)

Out[2]: True

In [3]: isinstance([1, 2, 3, 4], Iterable)

Out[3]: True

In [4]: isinstance((1, 2, 3, 4), Iterable)

Out[4]: True

In [6]: isinstance({'c':3, 'd':4}, Iterable)

Out[6]: True

In [7]: isinstance({1, 2, 3}, Iterable)

Out[7]: True

li = []

for i in range(2,100,2):

...:     li.append(i2)

...: print li

...:

[4, 16, 36, 64, 100, 144, 196, 256, 324, 400, 484, 576, 676, 784, 900, 1024, 1156, 1296, 1444, 1600, 1764, 1936, 2116, 2304, 2500, 2704, 2916, 3136, 3364, 3600, 3844, 4096, 4356, 4624, 4900, 5184, 5476, 5776, 6084, 6400, 6724, 7056, 7396, 7744, 8100, 8464, 8836, 9216, 9604]

方法2:

In [10]: [i2 for i in range(2, 10, 2)]

Out[10]: [4, 16, 36, 64]

In [12]: [i+j for i in 'xyz' for j in '123' ]

Out[12]: ['x1', 'x2', 'x3', 'y1', 'y2', 'y3', 'z1', 'z2', 'z3']#for嵌套if语句

In [13]: [i**2 for i in range(2, 20, 2) if i%2==0]

Out[13]: [4, 16, 36, 64, 100, 144, 196, 256, 324]应用:找出/etc下文件中以.conf结尾的文件;提示:    os.listdir("/etc")    s.enswith(".conf")

In [14]: import os

In [17]: print [i for i in os.listdir('/etc') if i.endswith('.conf')],

['host.conf', 'kdump.conf', 'sysctl.conf', 'ld.so.conf', 'sestatus.conf', 'nsswitch.conf', 'nfsmount.conf', 'man_db.conf', 'libaudit.conf', 'dnsmasq.conf', 'request-key.conf', 'krb5.conf', 'dracut.conf', 'libuser.conf', 'rsyslog.conf', 'logrotate.conf', 'e2fsck.conf', 'yum.conf', 'mke2fs.conf', 'idmapd.conf', 'ovirt-guest-agent.conf', 'rsyncd.conf', 'chrony.conf', 'sudo-ldap.conf', 'sudo.conf', 'vconsole.conf', 'locale.conf', 'resolv.conf', 'grub.conf', 'asound.conf', 'fuse.conf', 'colord.conf', 'hba.conf', 'sos.conf', 'oddjobd.conf', 'usb_modeswitch.conf', 'ipsec.conf', 'ksmtuned.conf', 'mtools.conf', 'radvd.conf', 'numad.conf', 'brltty.conf', 'fprintd.conf', 'wvdial.conf', 'pbm2ppa.conf', 'pnm2ppa.conf', 'updatedb.conf', 'lftp.conf', 'Trolltech.conf']

python娃娃在地上摆积木_Python中乐高积木——函数相关推荐

  1. python娃娃在地上摆积木_Python语言要从娃娃抓起

    原标题:Python语言要从娃娃抓起 在未来,对于一些高中生,甚至是小学生来说,除了英语,他们还有另外一门计算机编程"语言"需要学习--Python. 全国计算机等级考试调整 在2 ...

  2. Python基础_第3章_Python中的循环结构

    Python基础_第3章_Python中的循环结构 文章目录 Python基础_第3章_Python中的循环结构 Python中的循环结构 一.回顾分支练习题 1.判断是否为一个合法三角形 2.求世界 ...

  3. Python基础_第5章_Python中的数据序列

    Python基础_第5章_Python中的数据序列 文章目录 Python基础_第5章_Python中的数据序列 Python中的数据序列 一.字典--Python中的==查询==神器 1.为什么需要 ...

  4. python的id方法_python中id()函数的实用研究实例

    python中id()函数的实用研究实例 >>> a = 2.5 >>> b = 2.5 >>> c = b >>> a is ...

  5. python中chr的用法_python中chr()函数和ord()函数的用法

    原博文 2018-06-11 21:52 − 一,chr()函数 格式:Chr(<数值表达式>) 说明:函数返回值类型为String,其数值表达式值取值范围为0~255. 例如:Print ...

  6. python中函数的作用域_Python中的函数作用域

    在python中,一个函数就是一个作用域 name = 'xiaoyafei' def change_name(): name = '肖亚飞' print('在change_name里的name:', ...

  7. python方法调用名字不一样_python中调用父类同名方法

    知识回顾: 上节我们学习了类的构造方法. Python中构建构造方法主要使用__init__魔法方法. 实际项目操作中,由于类的继承导致可能覆盖同名的构造方法,导致只能使用子类的构造,而无法调用父类的 ...

  8. python 类可以调用实例变量_python中的实例方法、静态方法、类方法、类变量和实例变量浅析...

    注:使用的是Python2.7. 一.实例方法 实例方法就是类的实例能够使用的方法.如下: class Foo: def __init__(self, name): self.name = name ...

  9. python round函数_python中round函数如何使用

    round函数很简单,对浮点数进行近似取值,保留几位小数.比如 >>> round(10.0/3, 2) 3.33 >>> round(20/7) 3 第一个参数是 ...

  10. python中定义函数常用关键字_Python 中定义函数的关键字是 _________________ 。_学小易找答案...

    [其它]实验4-串和数组-实验任务书.docx [填空题]表达式 'abc' in ['abcdefg'] 的值为______________. [填空题]已知 x = range(1,4) 和 y ...

最新文章

  1. python爬虫requests-Python爬虫(requests模块)
  2. Winddows 10 安装 COCO API(pycocotools)
  3. Angular - angular2升级到angular8
  4. web前端性能分析--实践篇
  5. angularjs学习曲线
  6. Redis:20---常用功能之(发布与订阅)
  7. 为List配置一个搜索按钮
  8. MySql 应该选择普通索引 还是唯一 索引???
  9. Flutter 权限申请
  10. java520.1314表白_520最新表白公式,拿去不谢!
  11. Recoverit for Mac(数据恢复软件)
  12. python批量写入数据库_python实现数据库批量数据插入.
  13. Java小游戏之飞翔的小鸟
  14. JavaScript入门基础
  15. 走遍美国之大雾山国家公园
  16. 基于Python的A-Priori算法发现购物篮关联规则
  17. Gym - 101964E - Fishermen - (二分+区间更新)
  18. 文件监控脚本 -- Linux bash
  19. 软件测试难吗?0基础可以学吗?上手时间快吗?如何从零开始学习软件测试?
  20. 明星+大制作+生硬广告植入 观众看《富春山居图》-评论频道-金融界

热门文章

  1. apache恢复服务器文件,apache服务器的配置文件是
  2. ajax 跨域 提交cookie,Ajax跨域请求COOKIE无法带上的完美解决办法
  3. matlab ifft频率分辨率,matlab中关于FFT的使用(理解频率分辨率、补零问题)
  4. mysql负载均衡分区_利用分区和负载均衡获得更大更好的MySQL数据库[转载]
  5. spring源码-@Autowired、@Resource注解底层原理
  6. Spring源码之事务(一)
  7. 如何通过OWA登录界面修改域用户的密码
  8. proxy_redirect参数的作用
  9. [家里蹲大学数学杂志]第392期中山大学2015年泛函分析考博试题回忆版
  10. Java线程并发与安全性问题详解