今天总结一下在python中常用的一些风格代码,这些可能大家都会用,但有时可能也会忘记,在这里总结,工大家参考~~~

先点赞在看,养成习惯~~~

标题遍历一个范围内的数字

for i in xrange(6):
print i ** 2

xrange会返回一个迭代器,用来一次一个值地遍历一个范围,这种方式比range更省内存。在python3中xrange已经改名为range。

遍历集合

colors = ['red', 'green', 'blue', 'yellow']
for color in colors:
print color

反向遍历集合

for color in reversed(colors):
print color

遍历集合及其下标

for i, color in enumerate(colors):
print i, '-->', color

遍历两个集合

names = ['raymond', 'rachel', 'mattthew']
colors = ['red', 'green', 'blue', 'yellow']
for name, color in izip(names, colors):
print name, '-->', color

zip在内存中生成一个新的列表,需要更多的内存,izip比zip效率更高。在python3中,izip改名为zip,替换了原来的zip成为内置函数。

有序遍历

colors = ['red', 'green', 'blue', 'yellow']
for color in sorted(colors):
print color
for color in sorted(coloes, reverse = True):
print color

自定义排序顺序

colors = ['red', 'green', 'blue', 'yellow']
print sorted(colors, key=len)

列表解析和生成器

print sum(i ** 2 for i in xrange(10))

在循环内识别多个退出点

def find(seq, target):
for i, value in enumerate(seq):
if value == target:
break
else:
return -1
return i

分离临时上下文

with open('help.txt', 'w') as f:
with redirect_stdout(f):
help(pow)

上述代码用于演示如何临时把标准输出重定向到一个文件,然后再恢复正常。注意redirect_stdout在python3.4加入。

打开关闭文件

with open('data.txt') as f:
data = f.read()

使用锁

lock = threading.Lock()
with lock:
print 'critical section 1'
print 'critical section 2'

用字典计数

colors = ['red', 'green', 'red', 'blue', 'green', 'red']

d = {}
for color in colors:
d[color] = d.get(color, 0) + 1 d = defaultdict(int)
for color in colors:
d[color] += 1

最新文章

  1. ctype.h库函数----字符操作函数
  2. Oracle重启 error: ora-01034:oracle not available ora-27101:shared memory realm does not exist
  3. 使用 archetype插件创建maven目录结构
  4. XML的Pull解析
  5. 我的css释疑-float line-height inline-block vertical-align
  6. html5的一些表单属性
  7. UNIX基础知识之出错处理
  8. 【转】常见 jar包详解
  9. Uva227.Puzzle
  10. 在腾讯云上把Laravel整合万向优图图片管理能力,打造高效图片处理服务
  11. PHP初学者如何搭建环境,并在本地服务器(or云端服务器)运行自己的第一个PHP样例
  12. MarkDown的快速入门
  13. JAVA中抽象类的使用
  14. What is the best way to handle Invalid CSRF token found in the request when session times out in Spring security
  15. H-ui框架信息图标点击跳出页面问题
  16. 提高GitHub下载速度
  17. Socket实现断线重连
  18. 仿迅雷播放器教程 -- 基于VLC的C++播放器 (4)
  19. 15-BOM
  20. define和typedef

热门文章

  1. 最新最最最简单的Snagit傻瓜式破解教程(带下载地址)
  2. nginx的脚本引擎(二)rewrite
  3. 写了多年代码,你会 StackOverflow 吗
  4. redhat系统服务器重启后提示An error occurred during the file system check.
  5. 如何使用 Gin 和 Gorm 搭建一个简单的 API 服务 (一)
  6. centos8平台使用ip命令代替ifconfig管理网络
  7. 反射(Reflection)
  8. JS的Document属性和方法(转)
  9. 【Flutter 混合开发】与原生通信-BasicMessageChannel
  10. RocketMQ单节点搭建