Python学习之路第二天——函数

一、Python2.X内置函数表:

注:以上为pyton2.X内置函数,官方网址:https://docs.python.org/2/library/functions.html

二、Python3.X内置函数表:

注:以上为pyton3.X内置函数,官方网址:https://docs.python.org/3.5/library/functions.html

三、自定义函数:

def 函数名(参数):

    ...

  函数体

    ...

  • def:是函数的关键字,告诉python解释器这是一个函数。
  • 函数名:这个函数的名称,代码中调用此函数的标识。
  • 函数体:函数中进行一些逻辑运算,例如:if判断,for循环,函数等。
  • 参数:为此函数体提供数据
  • 返回值:当函数执行完毕后,可以给调用者返回数据。例:return。

1、函数返回值:

def x():
    if 1 < 0:
        return True
    else:
        return False

if x():
    print(‘1小于0‘)
else:
    print(‘1大于0‘)
以上实例运行后反回结果结果为:
1大于0

函数反回值(return)

2、向函数传递参数(传参):

函数的参数分为:

  • 普通参数
  • 默认参数
  • 动态参数

(1)、普通参数:

def x(name):
    print(name)

x:是函数名
name:是x这个函数的形式参数(也叫形参)

x(‘Earl‘)

Earl是x函数的实际参数(也叫实参)

以上实例运行后反回结果结果为:
Earl

普通参数

(2)、默认参数:

def x(name, age=20):
    print(‘name:%s,age:%s‘ %(name,age))

x:函数名。
name:为x函数的形式参数。
age:为x函数的默认参数。

x(‘Earl‘)
以上调用函数为使用默认参数,运行后反回结果结果为:
name:Earl,age:20

x(‘Earl‘, 26)
以上调用函数为未使用默认参数,运行后反回结果结果为:
name:Earl,age:26

默认参数

(3)动态参数:

def x(*args):
    print(args)

以下是第一种调用方式:
x(1, 2, 3, ‘name‘,)

实例运行后反回结果结果为:
(1, 2, 3, ‘name‘)

以下是第二种调用方式:
lis = [1, 2, 3, ‘name‘, ‘age‘,]
x(*lis)

实例运行后反回结果结果为:
(1, 2, 3, ‘name‘, ‘age‘)

动态参数一

def x(**kwargs):
    print(kwargs)

以下是第一种执行方式:
x(name=‘Earl‘, age=25)

以上实例运行后反回结果结果为:
{‘age‘: 25, ‘name‘: ‘Earl‘}

以下是第二种执行方式:
dic = {‘name‘: ‘Earl‘, ‘age‘: 25, ‘address‘: ‘beijing‘}
x(**dic)

以上实例运行后反回结果结果为:
{‘address‘: ‘beijing‘, ‘age‘: 25, ‘name‘: ‘Earl‘}

动态参数二

print(‘以上实例运行后反回结果结果为:‘)
def x(*args, **kwargs):
    print(args,kwargs)

以下为第一种调用方式:
x([33, 44, 55], name=‘Earl‘,agg=24)
以上实例运行后反回结果结果为:
([33, 44, 55],) {‘agg‘: 24, ‘name‘: ‘Earl‘}

以下为第二种调用方式:
lis = [1, 2, 3, ‘name‘]
dic = {‘name‘: ‘Earl‘, ‘age‘: 25, ‘address‘: ‘beijing‘}
x(*lis, **dic)
以上实例运行后反回结果结果为:
(1, 2, 3, ‘name‘) {‘address‘: ‘beijing‘, ‘age‘: 25, ‘name‘: ‘Earl‘}

动态惨数三

发邮件实例

四、lambda表达式:

学习条件运算时,对于简单的 if else 语句,可以使用三元运算来表示,即:

三元运算:

# 普通条件语句
if 1 == 1:
    name = ‘Earl‘
else:
    name = ‘tom‘
print(‘普通判断:%s‘ %name)

# 三元运算
name = ‘Earl‘ if 1 == 1 else ‘tom‘
print(‘三元运算:%s‘ %name)

以上实例运行后反回结果结果为:
普通判断:Earl
三元运算:Earl

三元运算

对于简单的函数,也存在一种简便的表示方式,即:

lambda表达式:

# 定义函数(普通方式)
def x(arg):
    return arg + 1

# 执行函数
re = x(100)
print(re)

以上实例运行后反回结果结果为:
101

# 定义函数(lambda表达式)
x = lambda arg: arg + 1

# 执行函数
re = x(100)
print(re)

以上实例运行后反回结果结果为:
101

lambda表达式

五、map函数:

遍历序列,对序列中每个元素进行操作,最终获取新的序列。

li = [11, 22, 33]
new_list = map(lambda a: a + 100, li)
print(list(new_list))

以上实例运行后反回结果结果为:
[111, 122, 133]

map实例一

li = [11, 22, 33]
sl = [1, 2, 3]
new_list = map(lambda a, b: a + b, li, sl)
print(list(new_list))
以上实例运行后反回结果结果为:
[12, 24, 36]

map实例二

六、filter函数:

对于序列中的元素进行筛选,最终获取符合条件的序列

li = [11, 22, 33]
new_list = filter(lambda arg: arg > 22, li)
print(list(new_list))
以上实例运行后反回结果结果为:
[33]

filter实例

时间: 2024-08-05 23:37:26

Python学习之路第二天——函数的相关文章

Python学习之路——第二弹(认识python)

第一弹中我是说明了学习python的目的,主要为了自我提升的考虑,那么为什么我对python感兴趣,python有什么用了?本章就简单说明下. python的用途很广,而且代码十分简洁,不像java.c等其他语言一样,对变量申明,调用类.库.函数等繁琐操作,而且代码结构清晰,会点英文,有的代码都能看得懂了. python主要应用于几个大的领域:科学计算,自动化运维,web开发,网络爬虫等,我了解python的原因也是因为项目要实现一个网络爬虫,但苦于项目成员对这方面之前都没接触过,所以我才去搜索

Python学习之路第二周汇总

# Author:Source #-*-coding:utf-8 -*- #使用第三方库,import 库名 '''import getpass password=getpass.getpass('Please input your password:') print(password)''' #自己建一个库,要让其生效要放在同一目录,或者放在site-packages(第三方库).若是在不同目录,需要添加新路径. '''account=input('input account!'.capita

Python学习之路第二天——字符处理

一.整数: 例如:1.10.30 整数可以做以下操作: bit_length函数:返回该整数占用的最少位数: >>> x=100 >>> x.bit_length() 7 位数值: >>> bin(100) '0b1100100 __abs__函数:返回绝对值: __abs__<==> abs() x= -100 y= 90 print("__abs__(x):", x.__abs__()) print("__

python学习之路 第二天

1.import 导入模块 #!/usr/bin/python # -*- coding:utf-8 -*- import sys print(sys.argv) 2.字符串常用方法: 移除空白: strip 分割: split 长度:len(obj) 索引:obj[1] 切片:obj[1:],obj[0:9] 3.列表创建方法: a = []1,2,3,4,5] a = list(1,2,3,4,5) 4.#!/usr/bin/python # -*- coding:utf-8 -*- a =

Python学习之路第二天——迭代器、生成器、算法基础

一.迭代器: 迭代器是访问集合元素的一种方式. 迭代器对象是从集合的第一个元素开始访问,直到所有的元素被访问完结束. 迭代器只能往前不会后退,不过这也没什么,因为人们很少在迭代途中往后退. 另外,迭代器的一大优点是不要求事先准备好整个迭代过程中所有的元素.迭代器仅仅在迭代到某个元素时才计算该元素,而在这之前或之后,元素可以不存在或者被销毁.这个特点使得它特别适合用于遍历一些巨大的或是无限的集合,比如几个G的文件 特点: 访问者不需要关心迭代器内部的结构,仅需通过next()方法不断去取下一个内容

Python学习之路 第二篇 二进制及其相关转化

1.十进制和进制 十进制位权的理解: 12360=0*10(1-1)+6*10(2-1)+3*10(3-1)+2*10(4-1)+1*10(5-1)  (n-n)表示次方 2.二进制:二进制是计算机技术中广泛采用的一种数秩,是逢二进位的进位秩.0和1是基本算符.因为它使用0和1两个数字符号. 二进制转十进制: 110101011=2*(1-1)+2*(2-1)+0*(3-1)+2*(4-1)+0*(5-1)+2*(6-1)+0*(7-1)+2*(8-1)+2*(9-1)   (n-n)表示次方

Python学习之路——强力推荐的Python学习资料

资料一:程序媛想事儿(Alexia)总结 Python是一种面向对象.直译式计算机程序设计语言.它的语法简捷和清晰,尽量使用无异义的英语单词,与其它大多数程序设计语言使用大括号不一样,它使用縮进来定义语句块.与Scheme.Ruby.Perl.Tcl等动态语言一样,Python具备垃圾回收功能,能够自动管理内存使用.它经常被当作脚本语言用于处理系统管理任务和网络程序编写,然而它也非常适合完成各种高级任务. Python上手虽然容易,但与其它任何语言一样要学好Python并非一日之功.我的Pyth

Python 学习之路(二)

Python 学习之路(二) 以下所用的是Python 3.6 一.条件语句 简单判断 1 if 判断条件: 2 执行语句-- 3 else: 4 执行语句-- 复杂判断 1 if 判断条件1: 2 执行语句1-- 3 elif 判断条件2: 4 执行语句2-- 5 elif 判断条件3: 6 执行语句3-- 7 else: 8 执行语句4-- 二.循环语句 2.1 while语句 和其他语言一样,不同的是多了else语句.在 python 中,while - else 在循环条件为 false

OpenCV for Python 学习 (二 事件与回调函数)

今天主要看了OpenCV中的事件以及回调函数,这么说可能不准确,主要是下面这两个函数(OpenCV中还有很多这些函数,可以在 http://docs.opencv.org/trunk/modules/highgui/doc/user_interface.html 找到,就不一一列举了),然后自己做了一个简单的绘图程序 函数如下: cv2.setMouseCallback(windowName, onMouse[, param]) cv2.createTrackbar(trackbarName,