[].reverse():反转
reverse([]):反转的迭代器,能保留原序列

l = [1,2,3,4,5]
l.reverse()
print(l)
l = [1,2,3,4,5]
l2 = reversed(l)
print(l2)
# 保留原列表,返回一个反向的迭代器
#输出:
[5, 4, 3, 2, 1]
<list_reverseiterator object at 0x0000000004F8F518>

slice(,):切片规则

l = (1,2,23,213,5612,342,43)
sli = slice(1,5,2)
print(l[sli])
print(l[1:5:2])
#输出:
(2, 213)
(2, 213)

format():可进行进制转换,调整格式

print(format('test', '<20'))
print(format('test', '>40'))
print(format('test', '^40'))
#输出:
test                testtest

bytes(str,encoding=’’).decode(’’):转换编码方式;
我拿到的是gbk编码的,我想转成utf-8编码

 print(bytes('你好',encoding='GBK'))     # unicode转换成GBK的bytesprint(bytes('你好',encoding='utf-8'))   # unicode转换成utf-8的bytes#输出:b'\xc4\xe3\xba\xc3'
b'\xe4\xbd\xa0\xe5\xa5\xbd'

网络编程 只能传二进制
照片和视频也是以二进制存储
html网页爬取到的也是编码

b_array = bytearray('你好',encoding='utf-8')#在修改字符串时,可节省空间
print(b_array)print(b_array[0])
'\xe4\xbd\xa0\xe5\xa5\xbd'
s1 = 'alexa'
s2 = 'alexb'
b=memoryview('\xe4\xbd\xa0\xe5\xa5\xbd',encoding='utf-8')#输出:bytearray(b'\xe4\xbd\xa0\xe5\xa5\xbd')
228

切片 —— 字节类型 不占内存
字节 —— 字符串 占内存

l = 'ahfjskjlyhtgeoahwkvnadlnv'
l2 = l[:10]

编码相关的函数

print(ord('好'))#查看字符的编码
print(ord('1'))
print(chr(97))
#输出:
22909
49
a
print(ascii('好'))#如果是ascii的字符就会原封不动打印,如果不是就会打印‘\u……’
print(ascii('1'))
#输出:
'\u597d'
'1'

\r或者repr:保留字符串的单引号

name = 'egg'
print('你好%r'%name)
#输出:
你好'egg'print(repr('1'))
print(repr(1))
#输出:
'1'
1

可迭代的函数:all/any
all→如列表中有任何的空,都返回False
any→有一个True,就返回True

print(all(['a','',123]))
print(all(['a',123]))
print(all([0,123]))
#输出:
False
True
Falseprint(any(['',True,0,[]]))
输出:True

拉链函数:zip→返回一个迭代器

l = [1,2,3,4,5]
l2 = ['a','b','c','d']
l3 = ('*','**',[1,2])
d = {'k1':1,'k2':2}
for i in zip(l,l2,l3,d):#zip(可为任何数据类型,任意长度)print(i)
#输出:
(1, 'a', '*', 'k1')
(2, 'b', '**', 'k2')

可迭代函数:filter/map
filter(func,[])→把[]中每个元素传进func,返回True的值(可用于删除None/空字符串)。执行了filter之后的结果集合<=执行之前的个数,filter只管筛选,不会改变原来的值;
map(func,[])→map执行前后元素个数不变,值可能发生改变。

def is_odd(x):return(x%2==1)
#相当于[]中的每个元素都传进函数里进行判断,相当于[i for i in [1,3,5,6,7,8] if i%2==1]
for i in filter(is_odd,[1,3,5,6,7,8]):print(i)
#输出:
1
3
5
7from math import sqrt
def find(x):re=sqrt(x)return(re%1==0)
#开平方为整数的数,如果是整数,会返回float类型,如4.0,4.0%1=0,1.2%1=0.2
for i in filter(find,list(range(100))):#filter执行之后元素个数发生变化,但不会改变原来的值print(i)#输出:
0
1
4
9
16
25
36
49
64
81
def find_num(x):re=sqrt(x)if re%1==0:return(x)else:pass
for i in map(find_num,list(range(5))):#map执行前后元素个数不变,值可能发生改变print(i)
#输出:0
1
None
None
4

排序:sorted/[].sort(key=)
sorted→在列表较小时用,因其会产生新的列表,对愿列表无影响,但占内存
lst.sort(key=)→改变原列表,在原列表的基础上进行排序

l = [1,-4,6,5,-10]
l.sort(key = abs)   # 在原列表的基础上进行排序
print(l)→输出:[1, -4, 5, 6, -10]print(sorted(l,key=abs,reverse=True))      # 生成了一个新列表 不改变原列表 占内存
print(l)
#输出:
[-10, 6, 5, -4, 1]
[1, -4, 5, 6, -10]l = ['   ',[1,2],'hello world']
new_l = sorted(l,key=len)
print(new_l)
#输出:
[[1, 2], '   ', 'hello world']

应用:客户输入一个页码,就输出该页所有的内容,每个页面5行内容

with open('F:/老男孩/分页读取数据.txt') as f:line_lst=f.readlines()#print(line_lst)
page_num=int(input('请输入页码:'))pages,mod=divmod(len(line_lst),5)
if mod==0:pages=pages
else:pages=pages+1#总页码数index_lst=list(range(0,len(line_lst),5))#分页的内容index
if page_num<pages:print(line_lst[index_lst[page_num-1]:index_lst[page_num]])
elif page_num==pages:print(line_lst[index_lst[page_num-1]:])
else:print('输入页码有误,或者超出了页码范围!')

笔记:python基础之内置函数2相关推荐

  1. python中递归函数的基例_详谈Python基础之内置函数和递归 Python递归和循环的区别...

    Python 递归函数基例 2. 关于递归函数基例的说明,以下选项中错误的是 A 递归函数的基例决定所谓基例就是不需要递归就能求解的,一般来说是问题的最小规模下的解. 例如:斐波那契数列递归,f(n) ...

  2. Python基础之内置函数

    一.内置函数 内置函数是python里自带可直接使用的函数,到python3.6共提供里68个内置函数 内置函数分6大板块: 基础数据类型:38 作用域相关:2 迭代器生成器:3 其他:12 反射:2 ...

  3. python基础之内置函数解析之二

    书接上文: 茱莉亚罗伯茨镇楼!!!! divmod(a, b) 它将两个(非复数)数字作为实参,并在执行整数除法时返回一对商和余数.对于混合操作数类型, 适用双目算术运算符的规则.对于整数,结果和 ( ...

  4. python什么元素为真_如何使用Python基础内置函数

    如何使用Python基础内置函数 发布时间:2020-08-05 13:46:59

  5. python函数递归法求一个数各位数之和_Python基础之内置函数和递归

    一.内置函数 下面简单介绍几个: 1.abs() 求绝对值 2.all() 如果 iterable 的所有元素都为真(或者如果可迭代为空),则返回 True 3.any() 如果 iterable 的 ...

  6. Day13 python基础---内置函数1

    一,内置函数: 1.什么是内置函数 就是python给你提供的,拿来直接用的函数,比如print,input等等,截止到python版本3.6.2,现在pyhton一共为我们提供了69个内置函数. 2 ...

  7. Python基础—内置函数、匿名函数、递归函数

    文章目录 一.内置函数 1 作用域相关 2 其他 Ⅰ 字符串类型代码的执行: Ⅱ 输入输出相关: Ⅲ 数据类型相关: Ⅳ 内存相关: Ⅴ 文件操作相关 Ⅵ 模块操作相关 Ⅶ 帮助方法 Ⅷ 调用相关 Ⅸ ...

  8. python学习之内置函数(二)

    4.7.3 内置函数(2) int() str() bool() set() list():将一个可迭代对象转化为列表 tuple():将一个可迭代对象转换成元组 dic(): 通过相应的方式创建字典 ...

  9. python基础之内置成员和魔法函数(16)

    内置成员 dict:获取类/对象的所属成员组成的集合 * 自己编写类文档 doc:获取类的文档信息 * class Human(): ''' 这是一个人类的类 他有着..的方法 可以制造出什么样的对象 ...

最新文章

  1. php mysql 配置
  2. Linux设备驱动开发概述
  3. map中只有一个值 获取_小学数学,为什么一个三角形中最多只有一个直角或一个钝角...
  4. 基于Android 虹软人脸、人证对比,活体检测
  5. 嵌入式linux设备驱动程序是,嵌入式Linux设备驱动开发之:按键驱动程序实例-嵌入式系统-与非网...
  6. 一文看懂LR寄存器及 BX LR 指令的两种用途
  7. python3.x和python2.x唯一区别_Python3.x和Python2.x的区别 (转)
  8. python2和3搭建,pip2和pip3的安装
  9. 数据结构-01-链表数据结构之单链表
  10. HyperLedger Composer 测试 Fabric网络是否连通
  11. Fiddler调式使用(一)深入研究
  12. nginx利用geo模块做限速白名单以及geo实现全局负载均衡的操作记录
  13. java常见反编译工具
  14. 图形面积用计算机软件计算方法,AutoCAD2018如何算面积 计算图形面积教程
  15. 790. 数的三次方根 Java题解 (二分)
  16. 2022还不知道如何申请注册公司域名邮箱,个人域名邮箱怎么弄?详解域名邮箱
  17. php 防挂马,织梦dedecms安全设置防挂马教程
  18. 《javascript设计模式与开发实践》——第一章(面向对象的javascript)学习记录
  19. 因式分解用python写程序_使用Python实现质因式分解算法
  20. 人员属性识别 PETA数据集下载

热门文章

  1. java 调用jar_在Java程序中执行另一个jar
  2. 秣小白的C语言旅程——第二站(含自我介绍)
  3. 《SQL145题》正式发布!
  4. 这几个UP主真的是宝藏,快来看看有没有你认识的
  5. A Full Hardware Guide to Deep Learning深度学习电脑配置
  6. Flink入门(五) 实时流Join ElasticSearch6维度表
  7. 人工智能实验--汉诺塔规约图(四个盘子)
  8. 献给那些没有自信的人。
  9. 明明安装了模块/包,Python提示无包/模块/报错
  10. webstorm热更新