Python3.x基础学习-函数用法(二)

前言

  Python为我们提供了丰富的内置函数,现在我们来了解一下常用的函数

内置函数

求商和余数 divmod()

ret = divmod(11,2)
print(ret)
# (5, 1)

求绝对值  abs()

ret = abs(-100)
print(ret)
# 100

求最大值 max()

ret = max(10,20)
print(ret)
# 20
# 其中 iterable 为可迭代对象,max 会 for i in … 遍历一遍这个迭代器,# 然后将每一个返回值当做参数传给 key=func 中的 func(一般用 lambda 表达式定义),# 然后将 func 的执行结果传给 key,然后以 key 为标准进行大小的 判断。

list1 = [2,1,8,-23,6]temp = list1[0]

print(max(list1,key=abs))
#使用max()函数,找出年龄最大的那组信息lst = [    [1001,‘zs‘,20], #学号,姓名,年龄    [1002,‘ss‘,25],    [1003,‘ww‘,22],]

def func(lst):    return lst[:][2]print(max(lst,key=func))
#使用max()函数找出出现次数最多的字符a = ‘123456789012345225689233‘print(a.count(‘1‘))print(max(a,key=a.count))
 

求最小值 min()

ret = min(10,20)
print(ret)
# 10

传入一个函数和一个可迭代对象 filter(function, iterable)

filter() 函数用于过滤序列,过滤掉不符合条件的元素,返回由符合条件元素组成 的新列表。该接收两个参数,第一个为函数,第二个为序列,序列的每个元素作为参数传递 给函数进行判断,然后返回 True 或 False,最后将返回 True 的元素放到新列表中。
# 过滤列表中所有偶数x = [1,2,3,3,4,4,2,6]
def func(n):
    return n%2==0
ret = filter(func,x)
print(list(ret))
# [2, 4, 4, 2, 6]
#过滤列表中的所有奇数
lst = [1,2,3,4,5,6,7,8,9]def func(num):    if num%2==1:        return True    else:        return Falseret = filter(func,lst)print(ret)# <filter object at 0x000002D15EC4F9B0>print(list(ret))# [1, 3, 5, 7, 9]


map(func,iterable)

map(func,iterable)有两个参数,第一个参数是一个函数,第二个参数是可迭代的内容。函数会依次作用在可迭代内容的每一个元素上进行计算,然后返回一个新的可迭代内容。
# 求列表中每个元素的平方值
lst =[1,2,3]
def func(i):
    return i*i

ret =map(func,lst)
ret1 = filter(func,lst)
print(list(ret))
# [1, 4, 9]
print(list(ret1))
# [1, 2, 3]

# 求两个列表中元素相加的和
lst1 = [1,2,3,4,5,6,7,8]
lst2 = [2,3,4,5,6]
def func(x,y):
    return x+y
ret =list(map(func,lst1,lst2))
print(ret)
# [3, 5, 7, 9, 11]

zip(list1,list2)

zip 函数接受任意多个可迭代对象作为参数,将对象中对应的元素打包成一个 tuple, 然后返回一个可迭代的zip对象.这个可迭代对象可以使用循环的方式列出其元素,若多个可迭代对象的长度不一致,则所返回的列表与长度最短的可迭代对象相同。
list1 =[1,2,3]
list2 =[3,2,1]
ret = zip(list1,list2)
print(list(ret))
# [(1, 3), (2, 2), (3, 1)]
# print(tuple(ret))

str1 =‘abc‘
str2 = ‘de1f123‘
ret =zip(str1,str2)
print(tuple(ret))
# ((‘a‘, ‘d‘), (‘b‘, ‘e‘), (‘c‘, ‘1‘))

tup1 = (‘a‘,‘b‘)
tup2 = (‘c‘,‘d‘)
# #生成[{‘a‘:‘c‘},{‘b‘:‘d‘}]

list1=[]
def func(tup):
    return {tup[0]:tup[1]}
ret2 = map(func,ret)
print(list(ret2))
# [{‘a‘: ‘c‘}, {‘b‘: ‘d‘}]

原文地址:https://www.cnblogs.com/johnsonbug/p/12700103.html

时间: 2024-11-08 02:28:46

Python3.x基础学习-函数用法(二)的相关文章

Python3.x基础学习-函数用法

函数用法 函数的参数类型 不可变类型参数:数值型.字符串str.元组tuple.可变类型:列表list,字典dict函数中a不可变,fun(a)内部修改 a 的值,只是修改另一个复制的对象,不会影响 a 本身.1.传递不可变类型参数,不会影响参数本身2.传递可变类型参数,会影响参数本身 # 不可变参数类型a =1 print(id(a)) # 2009628784 def func(a): a= 10 print(a,id(a)) func(a) # 20 2009629392 def func

js基础学习笔记(二)

2.1  输出内容(document.write) document.write() 可用于直接向 HTML 输出流写内容.简单的说就是直接在网页中输出内容. 第一种:输出内容用“”括起,直接输出""号内的内容. <script type="text/javascript"> document.write("I love JavaScript!"); //内容用""括起来,""里的内容直接输出.

C++基础学习教程(二)

接上一节内容 2.5条件和逻辑 自增和自减操作符 这个主要区别就是在前和后,大多数学习过其他语言的应该都知道.所以,一个程序带过. 示例如下: /************************************************************************* > File Name: list1001_++.cpp > Author: suool_hu > Mail: [email protected] > Created Time: 2014年0

ASP.Net MVC开发基础学习笔记:二、HtmlHelper与扩展方法

一.一个功能强大的页面开发辅助类—HtmlHelper初步了解 1.1 有失必有得 在ASP.Net MVC中微软并没有提供类似服务器端控件那种开发方式,毕竟微软的MVC就是传统的请求处理响应的回归.所以抛弃之前的那种事件响应的模型,抛弃服务器端控件也理所当然. 但是,如果手写Html标签效率又比较低,可重用度比较低.这时,我们该怎样来提高效率呢?首先,经过上篇我们知道可以通过ViewData传递数据,于是我们可以写出以下的Html代码: <input name="UserName&quo

javascript基础学习(十二)

javascript之BOM 学习要点: 屏幕对象 History对象 Location对象 一.屏幕对象 Screen对象是一个由javascript自动创建的对象,该对象的主要作用是描述客户端的显示器的信息. 目前显示器分辨率为800X600或1024X768两种. screen.height:屏幕的高度 screen.width:屏幕的宽度 screen.availHeigh:屏幕的有效高度 screen.availWidth:屏幕的有效宽度 二.History对象 History对象可以

java基础学习总结——线程(二)

永不放弃,一切皆有可能!!! 只为成功找方法,不为失败找借口! java基础学习总结——线程(二) 一.线程的优先级别 线程优先级别的使用范例: 1 package cn.galc.test; 2 3 public class TestThread6 { 4 public static void main(String args[]) { 5 MyThread4 t4 = new MyThread4(); 6 MyThread5 t5 = new MyThread5(); 7 Thread t1

Python零基础学习系列之二--Python介绍及环境搭建

1-1.Python简介: Python是一种解释型.面向对象.动态数据类型的高级程序设计语言.Python由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991年.像Perl语言一样, Python 源代码同样遵循 GPL(GNU General Public License)协议. Python(英国发音:/?pa?θ?n/ 美国发音:/?pa?θɑ?n/), 是一种面向对象的解释型计算机程序设计语言,由荷兰人Guido van Rossum于1989年发明,第

从零开始系列-R语言基础学习笔记之二 数据结构(一)

在上一篇中我们一起学习了R语言的环境搭建,这次我们开始学习R语言的数据结构第一部分:向量.数组和矩阵. 一.向量 向量是一维数组,其内容可以是数值.字符或布尔值,但所有数据的类型必须一致.创建向量使用的关键字是c,访问向量中的元素使用[],具体如下: 创建数值向量a<-c(1,2,3,4,5,6) 创建字符向量b<-c("a","b","c") 创建布尔向量c<-c(TRUE,FALSE) 访问向量: a[3] 得到的值是3,注

Day5-python基础之函数(二)

生成器 迭代器 装饰器 模块 来个需求,一个列表中所有元素都+1 1.最容易想到的方法 for循环,找列表索引,对应每个值+1 list_old = [1,2,3,4,5,6,7,8,9] for index,i in enumerate(list_old): list_old[index]+=1 print(list_old) 2.用上节课讲的匿名函数试试,也可以 a = map(lambda x:x+1,list_old) for i in a: print(i) 3.列表生成 a = [i