enumerate()使用
enumerate()使用
如果对一个列表,既要遍历索引又要遍历元素时,首先可以这样写:
list1 = ["这", "是", "一个", "测试"]
for i in range (len(list1)):
print i ,list1[i]
上述方法有些累赘,利用enumerate()会更加直接和优美:
list1 = ["这", "是", "一个", "测试"]
for index, item in enumerate(list1):
print index, item
>>>
0 这
1 是
2 一个
3 测试
enumerate还可以接收第二个参数,用于指定索引起始值,如:
list1 = ["这", "是", "一个", "测试"]
for index, item in enumerate(list1, 1):
print index, item
>>>
1 这
2 是
3 一个
4 测试
三元运算
val = a if 3<6 else b
判断文件是什么编码,用第三方库判断
import chardet
读文件
f = open('1.txt',mode = 'rb') #b的作用是读出二进制
f = open('1.txt',mode = 'ab' #a 追加模式
mode = 'r+' #读写模式,先读后写
mode = 'w+' #写读模式,先以写的模式打开,再读
flush() #把内存写进硬盘里
readable() #判断是否可读
tell() #返回当前光标位
seek() #回光标位
read() #读的是字节
seek() 和 tell() #读的是字符
f.truncate() #从当前位置删除
Word文档打开时是先打开到内存里面去
函数
def 定义
形参
实参
默认参数
默认参数必须放在形参的后面
非固定参数
send_alert(msg,*user) args # *传递的参数就可以不再固定个数 ,*后打包成元组
func(name,*args,**kwargs)
return #代表一个函数的终止;函数永远只会返回一个值
局部变量 #先执行局部变量,再全局变量
函数内部,可以调用全局变量
global #在函数里修改全局变量
嵌套函数
一个函数就是一个作用域,代码定义完成后,作用域就已经生成,无论其中的函数在哪里运行,该函数都会返回其作用域里运行
匿名函数:lambda x,y:x*y #声明一个匿名函数,复杂程度只能到三元运算
高阶函数 #接受一个或多个函数作为输入;;return返回另外一个函数
递归函数的返回值
def calc(x,count):
if count < 5:
x = x/2
print('x', x)
return calc(x,count+1) #此return是为了上一层获得下一层的return值 else:
print('x',x)
return x #此return是为了使最底层返回一个值给上一层,两个return 缺一不可 递归的特性
1.必须要有一个明确的结束条件
2.每次进入下一层,问题规模比上次递归要有所减少
3.递归效率不高,递归次数过多会导致栈溢出
enumerate()使用的更多相关文章
- python enumerate 用法
A new built-in function, enumerate() , will make certain loops a bit clearer. enumerate(thing) , whe ...
- enumerate用法总结-Python 3
enumerate()说明 enumerate()是python的内置函数 enumerate在字典上是枚举.列举的意思 对于一个可迭代的(iterable)/可遍历的对象(如列表.字符串),enum ...
- python enumerate用法
含义:"枚举,列举" 对于一个可迭代的(iterable)/可遍历的对象(如列表.字符串),enumerate将其组成一个索引序列,利用它可以同时获得索引和值 enumerate多 ...
- enumerate用法
Return an enumerate object. sequence must be a sequence, an iterator, or some other object which sup ...
- enumerate()
今天我们学一个单词 enumerate 后面加个括号 他就不是单词了,那是什么呢 来看一下 enumerate() a = ('htc', 'oppo', 'vivo', 'huawei', 'mi' ...
- python中enumerate()的用法
先出一个题目:1.有一 list= [1, 2, 3, 4, 5, 6] 请打印输出:0, 1 1, 2 2, 3 3, 4 4, 5 5, 6 打印输出, 2.将 list 倒序成 [6, 5, ...
- [python拾遗]enumerate()函数
在python中处理各类序列时,如果我们想显示出这个序列的元素以及它们的下标,可以使用enumerate()函数. enumerate()函数用于遍历用于遍历序列中的元素以及它们的下标,用法如下: 1 ...
- python enumerate函数用法
enumerate函数用于遍历序列中的元素以及它们的下标 i = 0 seq = ['one', 'two', 'three'] for element in seq: print i, seq[i] ...
- 1.xrange和range不要混了,2.range(len(xx))不如用enumerate
range()是列表, xrange()是迭代 >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i i ...
- 拷贝,集合,函数,enumerate,内置函数
1.拷贝 字符串和数字.赋值 id一样 import copy #提供拷贝功能 copy.copy() #原来的和现在的一起修改,不用修改时用浅copy,节省内存,复制最外层 copy.deepcop ...
随机推荐
- Tomcat配置服务和自启动
Tomcat配置服务和自启动1.Tomcat配置服务 假设Tomcat的安装路径为/usr/local/tomcat 1 为Tomcat添加启动参数 catalina.sh在执行的时候会调用同级路径下 ...
- Spring AOP @Before @Around @After 等 advice 的执行顺序
用过spring框架进行开发的人,多多少少会使用过它的AOP功能,都知道有@Before.@Around和@After等advice.最近,为了实现项目中的输出日志和权限控制这两个需求,我也使用到了A ...
- RabbitMQ(2) 一般介绍
RabbitMQ 即一个消息队列,主要是用来实现应用程序的异步和解耦,同时也能起到消息缓冲,消息分发的作用. 消息中间件在互联网公司的使用中越来越多,刚才还看到新闻阿里将RocketMQ捐献给了apa ...
- Caused by: java.lang.NoClassDefFoundError: com/google/common/base/MoreObjects
环境:jdk1.8 开发工具:IDEA 说明:今天在做springboot集成swagger2的时候,在启动程序的时候,报错 报错信息: Error starting ApplicationConte ...
- Practical Node.js (2018版) 13章, Node HTTP/2 Servers
新增的章节. If you are not using HTTP/2, then you are losing out on big improvements. HTTP/2相比http/1有很大的区 ...
- Practical Node.js (2018版) 第8章:Building Node.js REST API Servers
Building Node.js REST API Servers with Express.js and Hapi Modern-day web developers use an architec ...
- 压力测试+接口测试(工具jmeter)
jmeter是apache公司基于java开发的一款开源压力测试工具,体积小,功能全,使用方便,是一个比较轻量级的测试工具,使用起来非常简单.因 为jmeter是java开发的,所以运行的时候必须 ...
- php 按照中文字母名字排序,并把相应的头像显示出来
//排序public function getFirstChar($s){ $s0 = mb_substr($s,0,3); //获取名字的姓 $s = iconv('UTF-8','gb2312', ...
- GoEasy的使用
GoEasy介绍 http请求短连接,一次请求响应后关闭,而GoEasy建立了客户端与服务器之间的长连接. goeasy支持服务器到客户端的消息发布,客户端到客户端的消息发布 GoEasy用来做什么 ...
- CloudStack学习-1
环境准备 实验使用的虚拟机配置 Vmware Workstation 虚拟机系统2个 系统版本:centos6.6 x86_64 内存:4GB 网络:两台机器都是nat 磁盘:装完系统后额外添加个50 ...