小例子看python缩减代码
来源:互联网 发布:linux snmp 流量监控 编辑:程序博客网 时间:2024/05/21 10:44
问题: 寻找文件最长的行。
第一版核心代码:
f = open('/etc/motd', 'r')
longest = 0
while True:
linelen = len(f.readline().strip())
if not linelen:
break
if linelen > longest:
longest = linelen
f.close()
return longest
第二版核心代码:(for循环+尽早释放文件句柄)
f = open('/etc/motd', 'r')
longest = 0
allLines = f.readlines()
f.close()
for line in allLines:
linelen = len(line.strip())
if linelen > longest:
longest = linelen
return longest
第三版核心代码: (列表推导(解析))
f = open('/etc/motd', 'r')
longest = 0
allLines = [x.strip() for x in f.readlines()]
f.close()
for line in allLines:
linelen = len(line)
if linelen > longest:
longest = linelen
return longest
第四版核心代码: (利用迭代器+max()内建函数)
f = open('/etc/motd', 'r')
allLineLens = [len(x.strip()) for x in f]
f.close()
return max(allLineLens)
第五版核心代码: (生成器表达式优化内存)
f = open('/etc/motd', 'r')
longest = max(len(x.strip()) for x in f)
f.close()
return max(longest)
最终boss版核心代码:(文件操作默认读, python自动关闭文件)
return max(len(x.strip()) for x in open('/etc/motd'))
例子和代码来自于《python核心编程》
- 小例子看python缩减代码
- 缩减代码和资源
- python应用小例子
- python 小例子
- Python 语法小例子
- Python小例子
- python zipfile小例子
- Python多线程小例子
- python socket 小例子
- RelayCommand&DelegateCommand 小例子看区别
- 一个小例子看编程的扩展性
- 使用控件,代码小例子
- iOS一些代码小例子
- iOS一些代码小例子
- python的一个小例子
- python网络编程小例子
- python网络编程小例子
- python 3 UDP小例子
- iOS进阶面试题----Block部分
- KissXML解析问题解决
- javascript执行环境和栈
- android手机获取系统短信sqlite数据库并查看内容
- Android_百度地图BaiduMap_搜索服务
- 小例子看python缩减代码
- C#动态数据绘图graphic代码简单示例
- lua之class
- Unexpected error occurred while trying to check for group existence.
- 搜索引擎——原理技术与系统第三章
- easyui tree 的异步加载 前台的编写方法和后台的json数据格式组装方法
- poj 1703 Find them, Catch them
- 运用函数的递归求1*3*5*.......*n
- 一段时间的学习记录