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()使用的更多相关文章

  1. python enumerate 用法

    A new built-in function, enumerate() , will make certain loops a bit clearer. enumerate(thing) , whe ...

  2. enumerate用法总结-Python 3

    enumerate()说明 enumerate()是python的内置函数 enumerate在字典上是枚举.列举的意思 对于一个可迭代的(iterable)/可遍历的对象(如列表.字符串),enum ...

  3. python enumerate用法

    含义:"枚举,列举" 对于一个可迭代的(iterable)/可遍历的对象(如列表.字符串),enumerate将其组成一个索引序列,利用它可以同时获得索引和值 enumerate多 ...

  4. enumerate用法

    Return an enumerate object. sequence must be a sequence, an iterator, or some other object which sup ...

  5. enumerate()

    今天我们学一个单词 enumerate 后面加个括号 他就不是单词了,那是什么呢 来看一下 enumerate() a = ('htc', 'oppo', 'vivo', 'huawei', 'mi' ...

  6. 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, ...

  7. [python拾遗]enumerate()函数

    在python中处理各类序列时,如果我们想显示出这个序列的元素以及它们的下标,可以使用enumerate()函数. enumerate()函数用于遍历用于遍历序列中的元素以及它们的下标,用法如下: 1 ...

  8. python enumerate函数用法

    enumerate函数用于遍历序列中的元素以及它们的下标 i = 0 seq = ['one', 'two', 'three'] for element in seq: print i, seq[i] ...

  9. 1.xrange和range不要混了,2.range(len(xx))不如用enumerate

    range()是列表, xrange()是迭代 >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i i ...

  10. 拷贝,集合,函数,enumerate,内置函数

    1.拷贝 字符串和数字.赋值 id一样 import copy #提供拷贝功能 copy.copy() #原来的和现在的一起修改,不用修改时用浅copy,节省内存,复制最外层 copy.deepcop ...

随机推荐

  1. IdentityServer4中Code/Token/IdToken对应可访问的资源(api/identity)

    { OidcConstants.ResponseTypes.Code, ScopeRequirement.None }, { OidcConstants.ResponseTypes.Token, Sc ...

  2. 不错的redis文章

    参考: https://www.cnblogs.com/itdragon/tag/redis/

  3. iOS关于直播的链接

    iOS关于直播集成的链接 http://www.jianshu.com/p/7b2f1df74420 https://www.cnblogs.com/graveliang/p/5683617.html ...

  4. Geoserver+Postgresql+PostGIS 进行数据发布

    1.postgressql+postgis安装 由于我已经安装了,因此没法进行截图,给出下载地址 下载地址:https://www.postgresql.org/ 记得一定要下载edu的版本 因为这个 ...

  5. 以太坊钱包开发系列2 - 账号Keystore文件导入导出

    以太坊去中心化网页钱包开发系列,将从零开始开发出一个可以实际使用的钱包,本系列文章是理论与实战相结合,一共有四篇:创建钱包账号.账号Keystore文件导入导出.展示钱包信息及发起签名交易.发送Tok ...

  6. hbase大规模数据写入的优化历程 ,ZZ

    http://blog.csdn.net/zbc1090549839/article/details/51582817

  7. 两个非空的<div>元素inline-block化后出现空白部分解决办法

    在涉及到两个<div>元素并列显示的效果时,一般有两种方法: 1.使用float元素让元素并联显示: 2.将块状的<div>元素display设置为inline-block,使 ...

  8. 密码机制(PGP)

    01 PGP概念 02 PGP认证加密体系

  9. python四

    三元运算 name = "张三" if 1 == 2 else "李四" print(name) name1 = "张三" if 1 == ...

  10. 用python做一个烟花show

    烟花效果如图(截了几个时刻的静态图): 源代码如下: # -*- coding: utf-8 -*- # Nola import tkinter as tk from PIL import Image ...