python - 函数

简介:

*********************函数****************************

                                                     ---乐高积木之函数


定义函数
• def关键字,依次写出函数名、括号、括号中的参数和冒号 :
• 在缩进块中编写函数体,函数的返回值用 return 语句返回。

def func():
pass
return

总结:

定义函数时,函数不执行
调用函数时,函数才执行


## 有参数的函数


***********形式参数**********
#!/usr/bin/env python
#coding:utf-8

def add(x,y):
  print x + y
#实参,x=1,y=2
add(1,2)


Screenshot from 2018-01-08 21-24-08.png



***********默认参数**************
def mypow(x,y=2):
   print x**y

mypow(2)


Screenshot from 2018-01-08 21-29-41.png

Screenshot from 2018-01-08 21-29-49.png

*************可变参数********

def add(*args):
   sum = 0
   for i in args:
      sum += i
   print sum
add(1,2,3)


Screenshot from 2018-01-08 21-34-24.png

Screenshot from 2018-01-08 21-35-19.png

***************关键字参数************
kwarges实质是一个字典



Screenshot from 2018-01-08 21-41-13.png

参数总结
• 必选参数
•默认参数:默认参数一定要用不可变对象
•可变参数:*args 是可变参数,args 接收的是一个 tuple
•关键字参数:
**kwarges是关键字参数,kwarges 接收的是一个dict
•对于任意函数,都可以通过类似 func(*args, **kw) 的形式调用它

多种参数混合使用时,其参数顺序为:必选参数,默认参数,可变参数,关键字参数

#返回值


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

Screenshot from 2018-01-08 22-03-23.png

#实质上python只能返回一个值;
#间接通过元组返回多个值;


def fun(*args):
    """

    :param args:
    :return:
    """
    return max(args),min(args)

print fun(11,2,34,5,66)

[root@python code.6]# python canshu.py 
(66, 2)

Screenshot from 2018-01-08 22-08-54.png

[root@desktop code4]# python test.py 
(4, 1)


函数的作用域

变量的作用域
• 局部
变量:只能在函数内部使用的变量
• 全局变量:在整个程序中使用的变量
• global关键字:强制将局部变量转换为全局变量


Screenshot from 2018-01-08 22-12-23.png


Screenshot from 2018-01-08 22-12-33.png


*global关键字必须要先声明,在赋值;

#全局变量
num = 1
def fun():
    # global声明num为全局变量
    global num
    # 局部变量
    num = 5



Screenshot from 2018-01-08 22-13-14.png


高级特性

迭代
是否可以for循环遍历的对象;
isinstance判断是否可迭代;


Screenshot from 2018-01-08 22-17-03.png

列表生成式


生成列表的公式
需求: 生成一个列表, 返回1-100中偶数的平方;

方法1:
li = []
for i in range(2,101,2):
  li.append(i**2)
print li


Screenshot from 2018-01-08 22-22-30.png




方法2:

li = [i**2 for i in range(2,101,2)]
print li

Screenshot from 2018-01-08 22-24-58.png


Screenshot from 2018-01-08 22-25-24.png

变异的列表生成式

In [17]: # for 循环嵌套 if 语句
[i**2 for i in range(2,20) if i%2==0]
Out[17]: [4, 16, 36, 64, 100, 144, 196, 256, 324] 

In [20]: # for 循环嵌套 for 循环 , 两个字符串的全排列
[i+j for i in 'xyz' for j in '123']
Out[20]: ['x1', 'x2', 'x3', 'y1', 'y2', 'y3', 'z1', 'z2', 'z3']

练习:找出/etc下文件中以.conf结尾的文件;

提示:
- os.listdir("/etc")
- s.enswith(".conf")

import os
li=[i for i in os.listdir("/etc") if i.endswith(".conf")][:5] #显示前五个
print li

Screenshot from 2018-01-08 22-32-45.png

Screenshot from 2018-01-08 22-32-59.png


 本文转自 huanzi2017 51CTO博客,原文链接:http://blog.51cto.com/13362895/2058888


相关文章
|
8天前
|
Python
python函数的参数学习
学习Python函数参数涉及五个方面:1) 位置参数按顺序传递,如`func(1, 2, 3)`;2) 关键字参数通过名称传值,如`func(a=1, b=2, c=3)`;3) 默认参数设定默认值,如`func(a, b, c=0)`;4) 可变参数用*和**接收任意数量的位置和关键字参数,如`func(1, 2, 3, a=4, b=5, c=6)`;5) 参数组合结合不同类型的参数,如`func(1, 2, 3, a=4, b=5, c=6)`。
13 1
|
2天前
05-python之函数-函数的定义/函数的参数/函数返回值/函数说明文档/函数的嵌套使用/函数变量的作用域
05-python之函数-函数的定义/函数的参数/函数返回值/函数说明文档/函数的嵌套使用/函数变量的作用域
|
4天前
|
Python
python学习10-函数
python学习10-函数
|
4天前
|
Python
python学习4-内置函数range()、循环结构、循环控制语句、else语句、嵌套循环
python学习4-内置函数range()、循环结构、循环控制语句、else语句、嵌套循环
|
7天前
|
测试技术 开发者 Python
Python中的装饰器:优雅而强大的函数修饰工具
在Python编程中,装饰器是一种强大的工具,用于修改函数或方法的行为。本文将深入探讨Python中装饰器的概念、用法和实际应用,以及如何利用装饰器实现代码的优雅和高效。
|
12天前
|
Python
Python函数学习应用案例详解
【4月更文挑战第7天】学习Python函数的应用,包括计算两数之和、判断偶数、计算阶乘、生成斐波那契数列及反转字符串。示例代码展示了函数接收参数和返回结果的功能,如`add(a, b)`求和,`is_even(num)`判断偶数,`factorial(n)`计算阶乘,`fibonacci(n)`生成斐波那契数,以及`reverse_string(s)`反转字符串。
13 1
|
12天前
|
Python
python基础篇:什么是函数?函数有什么用?
python基础篇:什么是函数?函数有什么用?
23 3
|
16天前
|
安全 Python
Python中input()函数
【4月更文挑战第3天】,`input()` 是 Python 内建函数,用于从控制台获取用户输入。它会暂停程序并显示提示信息(如果提供),用户输入的内容被视为字符串返回。基本语法是 `variable = input(prompt)`,其中 `prompt` 是可选提示信息。例如,`name = input("请输入您的姓名:")` 后,程序会等待用户输入,然后将输入的字符串赋值给 `name`。注意 `input()` 总是返回字符串,需手动转换为其他类型,且避免使用 `eval()` 处理用户输入以防止安全风险。
21 2
Python中input()函数
|
16天前
|
Java C语言 C++
【Python】5. 基础语法(3) -- 函数篇
【Python】5. 基础语法(3) -- 函数篇
24 1
|
17天前
|
程序员 Python 容器
Python中的函数
【4月更文挑战第2天】,Python函数:代码复用的关键,通过`def`定义,接受参数,返回结果。内置如`len()`、`print()`,自定义函数满足特定需求。`lambda`用于快速小功能,参数多样,支持默认和可变。装饰器扩展功能,不改原代码。高阶函数处理其他函数。函数促进DRY原则,增强代码组织和可读性。
14 2
Python中的函数

热门文章

最新文章