常用内置函数方法:

min,max

 li = [1, 2, 3, 6, 9, 5, 10, 26]
print('li的最小值是:', min(li)) # 取最小值
print('li的最大值是:', max(li)) # 取最大值
#输出如下:
# li的最小值是: 1
# li的最大值是: 26

bool() 判断是True还是False

bool(0)
#False
bool(-1)
#True
bool(1)
#True
bool(False)
#False
bool(None)
#False

all,any 判断一个可迭代的参数里的元素是否为True或False

# all 判断一个可迭代参数的元素是否都是True,如果有一个非True,就返回False
li = [-1, 2, 9]
tup = (1, 2, 4, 8, 0)
empty_list = []
print(all(li))
# True
print(all(tup))
# False
print(all(empty_list)) # 需要特别注意的是,在python中.bool([])是返回False,但是all([]),返回的是True
# True
# any 只要有一个元素是True就返回True
print(any(tup))
# True

dir:打印当前程序所有的变量名称.

print(dir())
# 输出如下:
# ['__annotations__', '__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__spec__', 'empty_list', 'li', 'tup']

语法

sorted 语法:

sorted(iterable[, cmp[, key[, reverse]]])

参数说明:

  • iterable -- 可迭代对象。
  • cmp -- 比较的函数,这个具有两个参数,参数的值都是从可迭代对象中取出,此函数必须遵守的规则为,大于则返回1,小于则返回-1,等于则返回0。
  • key -- 主要是用来进行比较的元素,只有一个参数,具体的函数的参数就是取自于可迭代对象中,指定可迭代对象中的一个元素来进行排序。
  • reverse -- 排序规则,reverse = True 降序 , reverse = False 升序(默认)。

返回值

返回重新排序的列表。

students = [('john', 'A', 18), ('jane', 'B', 12), ('dave', 'B', 20)]
print(sorted(students,key=lambda x:x[2],reverse=True)) //按照年龄降序排列
--------------------------------------------------
[('jane', 'B', 12), ('john', 'A', 18), ('dave', 'B', 20)]

eval():用来执行一个字符串表达式,并返回表达式的值。

s = '2+8*9'
s1 = eval(s)
print(s1)
# 输出如下:
#

exec():方法和eval一样.只是exec()方法可以执行多行代码.

 code = '''
if 2 > 5:
print('2比5大')
else:
print('2没有5大') ''' exec(code)
#输出如下:
# 2没有5大 #注意,如果用eval(code) 来执行这段代码,会报错.

eval()和exec()的区别:

1.eval()执行代码时,只能执行单行.exec()可以执行多行

2.eval()可以获取返回值,exec()不能获取.看下面的例子.

 res = eval('9+3*7')
res1 = exec('9+3*7')
print('res', res, res1)
#输出如下:
# res 30 None res1 返回了None

ord(),chr()

 print(ord('a'))   #返回字符串在ASCII码中的十进制数
print(chr(97)) #返回十进制数在ASCII码中对应的字母
#输出:
#
# a

sum():求和

 li = [9,89, 84, 23, 34, 4343, 232]
print(sum(li))
#

map():

语法

map() 函数语法:

map(function, iterable, ...)

参数

  • function -- 函数,有两个参数

  • iterable -- 一个或多个序列

 print(list(map(lambda x, y: x * y,[9,5,6,4,3], [98,34,24,56])))
# [882, 170, 144, 224]

filter()

filter() 函数用于过滤序列,过滤掉不符合条件的元素,返回由符合条件元素组成的新列表。

该接收两个参数,第一个为函数,第二个为序列,序列的每个元素作为参数传递给函数进行判,然后返回 True 或 False,最后将返回 True 的元素放到新列表中。

语法

以下是 filter() 方法的语法:

filter(function, iterable)

参数

  • function -- 判断函数。
  • iterable -- 可迭代对象。

返回值

返回列表。

 print(list(filter(lambda x: x > 4, [1,2,3,4,5,6,7,8,9])))
# [5, 6, 7, 8, 9]

reduce():在python3中需要导入functools才可以使用.

reduce() 函数会对参数序列中元素进行累积。

函数将一个数据集合(链表,元组等)中的所有数据进行下列操作:用传给reduce中的函数 function(有两个参数)先对集合中的第 1、2 个元素进行操作,得到的结果再与第三个数据用 function 函数运算,最后得到一个结果。

语法

reduce() 函数语法:

reduce(function, iterable[, initializer])

参数

  • function -- 函数,有两个参数
  • iterable -- 可迭代对象
  • initializer -- 可选,初始参数.相当于替换迭代对象中的第一个元素值.

返回值

返回函数计算结果。

 # 求1+2+3+.....+100的值
import functools
print(functools.reduce(lambda x,y:x+y,list(range(101))))
#
# 使用初始参数
import functools
print(functools.reduce(lambda x,y:x+y,[1,3,5,7,9],5))
#
# 相当于把列表的中1替换成5.

callable():判断是否可以被调用,可以被调用返回True,反之返回False

 def calc():
pass a = 5
print(callable(calc))
print(callable(a))
#True
#False

frozenset():把一个集合变成不可变的.

 set = {1,2,3,4,5,6,7}
set.discard(6)
print(set)
set = frozenset(set)
set.discard(6) # 这一行会报错.不可变后,不能添加删除.

locals :打印当前作用域中的变量.

def calc():
x = 9
y = 8
print(locals()) calc()
# {'y': 8, 'x': 9} 以字典的形式返回.

zip() 函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表。

如果各个迭代器的元素个数不一致,则返回列表长度与最短的对象相同,利用 * 号操作符,可以将元组解压为列表。

语法

zip 语法:

zip([iterable, ...])

参数说明:

  • iterabl -- 一个或多个迭代器;

返回值

返回元组列表.

 l = [1,2,3,4,5,6]
l1 = ['a','b','c']
print(list(zip(l, l1)))
# [(1, 'a'), (2, 'b'), (3, 'c')]

Day 3-3 内置方法的更多相关文章

  1. python黑魔法 -- 内置方法使用

    很多pythonic的代码都会用到内置方法,根据自己的经验,罗列一下自己知道的内置方法. __getitem__ __setitem__ __delitem__ 这三个方法是字典类的内置方法,分别对应 ...

  2. python常用数据类型内置方法介绍

    熟练掌握python常用数据类型内置方法是每个初学者必须具备的内功. 下面介绍了python常用的集中数据类型及其方法,点开源代码,其中对主要方法都进行了中文注释. 一.整型 a = 100 a.xx ...

  3. 7.python字符串-内置方法分析

    上篇对python中的字符串内置方法进行了列举和简单说明,但这些方法太多,逐一背下效率实在太低,下面我来对这些方法按照其功能进行总结: 1.字母大小写相关(中文无效) 1.1 S.upper() -& ...

  4. 6.python字符串-内置方法列举

    所谓内置方法,就是凡是字符串都能用的方法,这个方法在创建字符串的类中,下面是总结: 首先,我们要学习一个获取帮助的内置函数 help(对象) ,对象可以是一个我们创建出来的,也可以是创建对象的那个类, ...

  5. python 字典内置方法get应用

    python字典内置方法get应用,如果我们需要获取字典值的话,我们有两种方法,一个是通过dict['key'],另外一个就是dict.get()方法. 今天给大家分享的就是字典的get()方法. 这 ...

  6. 内置方法+lambda是pythonic的利器

    python可以写的非常简洁,通过使用内置的map,reduce,filter,lambda方法,非常具有文艺范. 举个例子,例如 def fromIpToNum(ipAddr):    return ...

  7. 字符串:各种奇葩的内置方法 - 零基础入门学习Python014

    字符串:各种奇葩的内置方法 让编程改变世界 Change the world by program 字符串:各种奇葩的内置方法 或许现在又回过头来谈字符串,有些朋友可能会觉得没必要,也有些朋友会觉得不 ...

  8. s14 第4天 关于python3.0编码 函数式编程 装饰器 列表生成式 生成器 内置方法

    python3 编码默认为unicode,unicode和utf-8都是默认支持中文的. 如果要python3的编码改为utf-8,则或者在一开始就声明全局使用utf-8 #_*_coding:utf ...

  9. while补充,字符串和数字的内置方法

    一.while循环的补充 while True: name=input('please input your name: ') password=input('please input your pa ...

  10. JavaScript基础:BOM的常见内置方法和内置对象

    本文最初发表于博客园,并在GitHub上持续更新前端的系列文章.欢迎在GitHub上关注我,一起入门和进阶前端. 以下是正文. BOM的介绍 JavaScript的组成 JavaScript基础分为三 ...

随机推荐

  1. 小程序背景图片bug

    在pc端调试的时候已经可以看到出现背景图片了,但是在真机调试的时候却发现没有背景图片,那么原因是什么呢?真机调试和vconsole也看不出什么鸟,其实这是小程序的一个bug.另一种说法是:backgr ...

  2. w3m 在ubuntu中的使用

    w3m 使用总结 安装 sudo apt install w3m终端 w3m www.baidu.com 即可打开w3m是个开放源代码的命令行下面的网页浏览器.一般的linux系统都会自带这个工具,可 ...

  3. redis加锁

    1. redis加锁分类 redis能用的的加锁命令分表是INCR.SETNX.SET2. 第一种锁命令INCR 这种加锁的思路是, key 不存在,那么 key 的值会先被初始化为 0 ,然后再执行 ...

  4. 测试中 unittest.main(verbosity=1) 是什么意思

    这里的verbosity是一个选项,表示测试结果的信息复杂度,有三个值0 (静默模式): 你只能获得总的测试用例数和总的结果 比如 总共100个 失败20 成功801 (默认模式): 非常类似静默模式 ...

  5. 基于Spring Boot和Shiro的后台管理系统FEBS

    FEBS是一个简单高效的后台权限管理系统.项目基础框架采用全新的Java Web开发框架 —— Spring Boot 2.0.3,消除了繁杂的XML配置,使得二次开发更为简单:数据访问层采用Myba ...

  6. ansible批量免秘登录

    ansible批量免秘登录   主控机 10.22.0.185 centos7 被控机 10.22.0.186 centos7 一.主控机安装ansible yum install epel-rele ...

  7. Linux 创建静态库(.a)和动态库(.so)

    0. 回顾一下 gcc 选项 ============================================== -E : 仅做预处理,例如去注释,宏展开,include 展开等 -S : ...

  8. Emacs 中使用中文插件 eim

    在 Emacs 中输入中文,一般用 ibus 一类的输入法也能应付,但来回切换有点麻烦,这里介绍国人写的一个好插件 eim. - 安装 由于在 list-packages 中没有找到这个插件,所以不能 ...

  9. 初学Python——第一节课

    一.Python语言的特性: 1.与C语言不同,Python语言是一门解释性语言.程序在执行过程中,执行一步.编译一步. 2.Python是一个动态类型语言,不需要定义变量的数据类型. 3.Pytho ...

  10. LDAP1-安装部署LDAP服务

    基于Linux部署openldap服务 参考文档: https://blog.csdn.net/computer1024/article/details/78172785 参考文档:  https:/ ...