目录

  • 一、常见内置函数
    • 1.abs()
    • 2.all()与any()
    • 3.bin() oct() hex()
    • 4.int()
    • 5.bytes()
    • 6.callable()
    • 7.chr() ord()
    • 8.dir()
    • 9.divmod()
    • 10.enumerate()
    • 11.eval() exec()
    • 12.hash()
    • 13.help()
    • 14.isinstance()
    • 15.pow()
    • 16.round()
  • 二、可迭代对象
    • 1.什么是迭代
    • 2.代码演示
    • 3.如何判断可迭代对象
  • 三、迭代器对象
    • 1. 如何判断迭代器对象
    • 2. 如何判断迭代器对象
    • 3. 如何判断迭代器对象
    • 4.补充说明
      • 4.1.迭代器反复使用
      • 4.2.针对双下方法
      • 4.3.迭代器对象特殊的地方(******)
  • 四、for循环的本质

一、常见内置函数

内置函数,提前定义好的 直接使用即可 很多内置函数的功能都好用

1.abs()

求绝对值

print(abs(-78)) #78

2.all()与any()

判断容器类型中的所有数据对应的布尔值是否为True

all()
所有的数据值都为True的情况下,结果才是True

print(all([1,2,3,4,5,0]))  #False
print(all([1,2,3,4,5]))  #True

any()
所有的数据值只要有一个为True,结果就是True

print(any([1,2,3,4,5,0]))  #True
print(any([1,2,3,4,5]))  #True

3.bin() oct() hex()

十进制转其他进制

print(bin(20)) #0b10100
print(oct(20)) #0o24
print(hex(20)) #0x14

4.int()

类型转换 其他进制转十进制

print(int(0b1010))
print(int(0o12))
print(int(0xa))

5.bytes()

类型转换

res = '劳动最光荣'.encode('utf8')
print(res)
res1 = res.decode('utf8')
print(res1)
res = bytes('现在有多苦 将来就有多轻松','utf8')
print(res)
res1 = str(res,'utf8')
print(res1)

6.callable()

call在IT专业名词中翻译成 调用>>>:加括号执行

判断某个变量是否可以加括号调用

name = 'david'
def index():print('from index')
print(callable(name))  # False
print(callable(index))  # True

7.chr() ord()

依据ASCII码表实现字符与数字的转换

print(chr(65))  # A     A~Z:65~90
print(chr(97))  # a     a~z:97~122
print(ord('A'))  # 65
print(ord('a'))  # 97

8.dir()

获取对象内部可以通过句点符获取的数据

print(dir(str))

9.divmod()

获取除法之后的整数和余数

手上有很多数据,每页展示10条,需要多少页?
通过代码自动计算!

总数据 每页展示 需要多少页
100 10 10
98 10 10
81 10 9
999 10 ???
int_num ,  more = divmod(999,10)
if more:int_num += 1
print('总页数:%s'% int_num) #总页数:100页

10.enumerate()

枚举

name_list = ['jason', 'kevin', 'oscar', 'jerry']

需求: 循环打印出数据值并且对应的索引值

for i, j in enumerate(name_list, 100):  # 默认是从0开始 可以自定义print(i, j)  # 100 jason ;  101 kevin ;  102 oscar ;  103 jerry

11.eval() exec()

能够识别字符串中python代码并执行

res = 'print(123)'

eval(res)
不识别复杂结构的代码 只能识别最简单的

exec(res)
能够识别复杂结构的代码

res1 = "for i in range(10):print(i)"
exec(res1) #0 1 2 3 4 5 6 7 8 9

res1 = “for i in range(10):print(i)”
eval(res) 错误

12.hash()

返回一串随机的数字(哈希值)

print(hash('ella')) # -8158860637019053658
print(hash('111')) # -6582946232358485528

13.help()

查看帮助信息

help(sorted)

sorted(iterable, /, *, key=None, reverse=False)Return a new list containing all items from the iterable in ascending order.A custom key function can be supplied to customize the sort order, and thereverse flag can be set to request the result in descending order.

14.isinstance()

判断某个数据是否属于某个数据类型

print(isinstance(123,int))  # True
print(isinstance(123,str))  # False

15.pow()

幂指数

print(pow(2, 3))  # 8

16.round()

大致:四舍五入(不推荐使用)

round( x [, n] )
x -- 数值表达式。 n -- 数值表达式,表示从小数点位数。

print(round(98.335, 2))  # 98.33
print(round(98.6326,3))  # 98.633

简单的说就是,round(98.335, 2) 的结果,不论我们从python2还是3来看,结果都应该是98.34的,结果它偏偏是98.33,为什么?这跟浮点数的精度有关。我们知道在机器中浮点数不一定能精确表达,因为换算成一串1和0后可能是无限位数的,机器已经做出了截断处理。那么在机器中保存的98.335这个数字就比实际数字要小那么一点点。这一点点就导致了它离98.33要更近一点点,所以保留两位小数时就近似到了98.33。


二、可迭代对象

1.什么是迭代

迭代就是更新换代 每次迭代相当于在上一次的结果上进行改变
eg:手机上软件每次更新就相当于版本的迭代

2.代码演示

不属于迭代

 while True:print('你好呀!')

属于迭代

 n = 0while n < 10:print(n)n += 1

3.如何判断可迭代对象

内置有__iter__方法的都叫做可迭代对象
1.内置是什么意思?
通过句点符直接能够点出来的东西都叫内置
2.xxx 针对双下划线开头双下划线结尾的方法
统一读作双下xxx


# int  # 整型不是可迭代对象float  # 浮点型不是可迭代对象str  # 字符串是可迭代对象list  # 列表是可迭代对象dict  # 字典是可迭代对象tuple  # 元组是可迭代对象set  # 集合是可迭代对象bool  # 布尔值不是可迭代对象def index():  # 函数名不是可迭代对象print()f = open(r'01 考题讲解.py','r',encoding='utf8')  # 文件对象是可迭代对象

可迭代对象
字符串 列表 字典 元组 集合 文件对象(本身就是迭代器对象)
不是可迭代对象
整型 浮点型 布尔值 函数名

可迭代对象能够支持for循环取值

三、迭代器对象

作用:
迭代器对象给我们提供了一种不依赖于索引取值的方式
正是因为有迭代器对象的存在 我们才能对字典、集合这些无序类型循环取值

1. 如何判断迭代器对象

内置有__iter__和__next__的对象都称为迭代器对象

2. 如何判断迭代器对象

可迭代对象调用__iter__方法之后就会变成迭代器对象
迭代器对象调用__iter__方法无论多少次还是迭代器对象本身

3. 如何判断迭代器对象

res = 'david'.__iter__()  # res已经是迭代器对象
print(res.__next__())  # d
print(res.__next__())  # a
print(res.__next__())  # v
print(res.__next__())  # i
print(res.__next__())  # d
print(res.__next__())  # 没有了直接报错d1 = {'name':'jason','pwd':123}
res = d1.__iter__()
print(res.__next__())
print(res.__next__())l1 = [11, 22, 33, 44, 55, 66, 77, 88]# 需求:不使用for循环 依次打印出列表中所有的数据值# 1.先将列表变成迭代器对象res = l1.__iter__()# 2.定义一个计数器count = 0# 3.编写while循环while count < len(l1):print(res.__next__())count += 1

4.补充说明

4.1.迭代器反复使用

# print(l.__iter__().__next__())  # 11  每次都是产生了一个新的迭代器对象# print(l.__iter__().__next__())  # 11# print(l.__iter__().__next__())  # 11# print(l.__iter__().__next__())  # 11res = l.__iter__()print(res.__iter__().__next__())  # 11  每次使用的都是一个迭代器对象print(res.__iter__().__next__())  # 22print(res.__iter__().__next__())  # 33print(res.__iter__().__next__())  # 44

4.2.针对双下方法

res = l.__iter__()  # 可以简写iter(l)
res.__next__()  # 可以简写next(res1)

4.3.迭代器对象特殊的地方(******)

可迭代对象 迭代器对象 通过打印操作无法直接看出内部数据的情况
这个时候他们都能够帮你节省内存
相当于是一个工厂 你要一个数据就临时给你造一个


四、for循环的本质

语法结构:

for 变量名 in 可迭代对象:for循环体代码1.for会自动将in后面的数据调用__iter__()变成迭代器对象
2.之后每次循环调用__next__()取值
3.最后没有值__next__()会报错 for能够自动处理该错误 让循环正常结束

python——常见内置函数、可迭代对象与迭代器对象相关推荐

  1. 逆袭之路——python常见内置函数、表达式【day15】

    今日内容概要 三元表达式(简化代码) 各种生成式(简化代码) 匿名函数(简化代码) 常见重要内置函数 常见内置函数补充 今日内容详细 一.三元表达式 三元表达式:         值1 if 条件 e ...

  2. python 常见内置函数setattr、getattr、delattr、setitem、getitem、delitem

    常见内置函数 内置函数:在类的内部,特定时机自动触发的函数 示例1:setattr.getattr.delattr class Person: # def __init__(self, name): ...

  3. python常见内置函数_python常见的内置函数

    函数分为自定义函数和内置函数 python内置函数分类: 一.强制转换int() / str() / bool() / list() / tuple() / dict() / set() 二.输入输出 ...

  4. python常见内置函数

    abs # 求绝对值 all #Return True if bool(x) is True for all values x in the iterable.If the iterable is e ...

  5. python内置函数表示2的10次幂_Python常见内置函数用法(二)

    本文作者:孙雪丽 文字编辑:杨慧琳 技术总编:张学人重大通知!!!2019年6月22日至24日在河南郑州举行Stata编程技术特别训练营,招生工作已经圆满结束.另外爬虫俱乐部将于2019年7月5日至7 ...

  6. hog函数的用法 python_Python常见内置函数用法(三)

    本文作者:孙雪丽 文字编辑:周聪聪 技术总编:张学人 重大通知!!!2019年6月22日至24日在河南郑州举行Stata编程技术特别训练营,招生工作已经圆满结束.另外爬虫俱乐部将于2019年7月5日至 ...

  7. 以下哪个不是python的内置函数_以下哪个 Python 内置函数可以返回列表对象中元素个数。...

    [多选题]假设 x=[0,1,2,3],执行哪些语句之后,x 的值为[0, 1, 2]. [多选题]以下哪些对象的分隔符为逗号. [单选题]已知列表 x=[0,1,2,1,4],那么执行语句 del ...

  8. python常用内置函数总结-Python 常用内置函数

    Python 常用内置函数如下: 1. abs()函数返回数字的绝对值. print( abs(-45) )# 返回45print("abs(0.2):",abs(0.2))#返回 ...

  9. 笔记十八:python的内置函数有哪些尼?都怎么是使用尼?(map()、reduce()、filter()、lambda()……)

    python的内置函数有很多,你如果和我一样是个初学者,那么学会看这个函数怎么用,需不需要传入参数等问题非常必要,首先尼函数名先打出来,然后按着ctrl键再把鼠标移到函数名位置,发现函数名会变颜色(一 ...

最新文章

  1. LC124 Binary Tree Maximum Path Sum
  2. MATLAB与C#混合编程
  3. 一.js高级(4)-函数调用-this指向-其他参数
  4. java安全编码指南之:输入注入injection
  5. 个性化配置你的SQL Server on Linux
  6. mysql 性能拐点_性能压测及分析调优实践
  7. 【今日CV 视觉论文速览】20 Nov 2018
  8. jquery中去重复排序(函数: $.grep() join() sort() )
  9. 服务器搭建网站完整教程(宝塔面板+wordpress) 快速搭建网站 一键部署
  10. 论文阅读笔记(十五)——黑猩猩在野外的脸:用于预测灵长类身份和属性的对数欧几里得CNN
  11. JAVA贪吃蛇小游戏源代码系列
  12. spss 为何打不开
  13. 【NLP】文献翻译2——英语单词语义相似性的Word2Vec模型分析
  14. 烧脑又过瘾!这个被严重低估的学习方法,看完瑟瑟发抖!
  15. 华为认证HCIP-Datacom Advanced Routing Switching Technology 知识点
  16. 【量化笔记】量价关系分析
  17. Exchange邮箱的创建和配置
  18. 手机app抓包https请求信息,解决SSL Pinning验证
  19. 逍遥情缘服务器维护没通告,【维护公告】2月2日中午12:00维护公告
  20. 编译器的优化真是太难了!

热门文章

  1. RK3399平台开发系列讲解(SPI子系统)4.36、SPI子系统驱动框架详解
  2. C++11:使用 auto/decltype/result_of使代码可读易维护
  3. 不租云服务,也能自建网站
  4. 17.笨方法学python 习题43
  5. 计算机等级证打字每分钟多少字才算合格?
  6. 锂电回收行业硫酸镍溶液除硅
  7. php代码加密tp5,TP5.1写接口用来加密解密的方法
  8. anyRTC-在线娃娃机
  9. 3脚送话器内部电路图_话机送、受话器的修理与电路检修
  10. text-shadow阴影文本