可爱的Python_课后习题_CDay−2 完成核心功能
1. 在前文的grep 实现例子中,没有考虑子目录的处理方式,因为如果直接open 目录进行读grep 是古老实用且高效的模式文本匹配工具,在所有的Unix/Linux 系统中都会默认安装,它最常做的事儿是将一堆文本中包含某个模式的文本行找出来,如:~$ cat /proc/cpuinfo | grep
core
core id :0
cpu cores :2
core id :1
cpu cores :2
30 | 实例故事操作,会出现错误,所以请读者修改这个示例代码,以便考虑到子目录这种特殊情况,然后把最后探索出的 cdcGrep()嵌入 pycdc-v0.5.py 中,实现完成版本的PyCDC。
python代码:
def grep(cdcpath, keyword):
cdcpathlist = list()
index = 1 for root, dirs, files in os.walk(cdcpath):
for file in files:
if ".txt" in file:
cdcpathlist.append(os.path.join(root, file)) for cdcpath in cdcpathlist:
cdcfile = open(cdcpath)
for line in cdcfile.readlines():
if keyword in line:
print line
2. 编写一个类,实现简单的栈。数据的操作按照先进后出(FILO)的顺序。主要成员 函式为 put(item),实现数据 item 插入栈中;get(),实现从栈中取一个数据。
python代码:
#encoding=utf-8 class Stack:
items = list() def put(self, item):
self.items.append(item) def get(self):
length = len(self.items)
item = self.items[length-1]
self.items.remove(item)
return item if __name__ == "__main__":
stack = Stack()
for item in range(1, 10):
stack.put(item) for item in range(1, 10):
print stack.get()
可爱的Python_课后习题_CDay−2 完成核心功能的更多相关文章
- 可爱的Python_课后习题_CDay−3 通过函式进行功能化
1. 读取某一简单索引文件cdays−3-test.txt,其每行格式为:文档序号关键词,现须根据这些信息将它转化为倒排索引,即统计关键词在哪些文档中,格式如下:包含该关键词的文档数关键词 => ...
- 可爱的Python_课后习题_CDay−4 可用的首个Python 脚本
读取文件cdays−4-test.txt 内容,去除空行和注释行后,以行为单位进行排序,并将结果输出为cdays−4-result.txt. cdays−4-test.txt的内容 #some wor ...
- 可爱的Python_课后习题_CDay−5 Python 初体验和原始需求
计算今年是否是闰年.判断闰年条件,满足年份模400 为0,或者模4 为0 但模100不为0. def is_learp_year(year): """判断年份是否为润年& ...
- 可爱的Python_课后习题_CDay0 时刻准备着!发布
请根据软件发布的流程和软件开发的编码规范,将读者在前面章节所写的程序修改并发 布出去.另外,可以查找下除了 epydoc 外还有哪些较好的 py 文档生成器? pydoc是Python自带的模块,主要 ...
- 《python核心编》程课后习题——第三章
核心编程课后习题——第三章 3-1 由于Python是动态的,解释性的语言,对象的类型和内存都是运行时确定的,所以无需再使用之前对变量名和变量类型进行申明 3-2原因同上,Python的类型检查是在运 ...
- web实验指导书和课后习题参考答案
实验指导书 :http://course.baidu.com/view/daf55bd026fff705cc170add.html 课后习题参考答案:http://wenku.baidu.com/li ...
- 《Python核心编程》 第六章 序列 - 课后习题
课后习题 6–1.字符串.string 模块中是否有一种字符串方法或者函数可以帮我鉴定一下一个字符串是否是另一个大字符串的一部分? 答:成员关系操作符(in.not in) import string ...
- 《Python核心编程》 第五章 数字 - 课后习题
课后习题 5-1 整形. 讲讲 Python 普通整型和长整型的区别. 答:普通整型是绝大多数现代系统都能识别的. Python的长整型类型能表达的数值仅仅与你机器支持的(虚拟)内存大小有关. 5- ...
- 機器學習基石(Machine Learning Foundations) 机器学习基石 课后习题链接汇总
大家好,我是Mac Jiang,非常高兴您能在百忙之中阅读我的博客!这个专题我主要讲的是Coursera-台湾大学-機器學習基石(Machine Learning Foundations)的课后习题解 ...
随机推荐
- 【Java EE 学习 32 上】【JQuery】【选择器】
一.JQuery简介 1.JQuery是JavaScript库,封装了很多预定义对象和实用函数. 2.JQury的优势: (1)简洁,其宗旨就是写更少的代码做更多的事. (2)文档声明非常全面:htt ...
- ubuntu SSH 连接、远程上传下载文件
安装 SSH(Secure Shell) 服务以提供远程管理服务 sudo apt-get install ssh SSH 远程登入 Ubuntu 机 ssh username@192.168.0.1 ...
- SVG实现导航动画
效果图动画后 html <!DOCTYPE html> <html > <head> <meta charset="UTF-8"> ...
- IDF实验室:牛刀小试
被改错的密码[从格式和长度来推测出是MD5] 迷醉..人生第一道ctf题?据说是因为看起来像是MD5加密的格式,但是数了一下发现有33个字符,就推测???熊孩子多敲了一位进去.从32个变33个了,然后 ...
- 2016 ACM/ICPC Asia Regional Dalian Online(更新到五道题)
1006 Football Games 这道题输入也很阴险!!! 这道题过题姿势最优雅的,不是if else if else if.那样很容易wa的. 如果没有平手选项, 赢得加一分的话, 可以用La ...
- HDU1003 简单DP
Max Sum Problem Description Given a sequence a[1],a[2],a[3]......a[n], your job is to calculate the ...
- 《Invert》开发日志05:终止
今天终于看了久闻大名的<独立游戏大电影>,然后我就做了一个坑爹的决定:终止“Invert”项目的开发.没错,在还没正式开工之前,我就决定停掉这个项目,而且是永久终止.做这个决定并不是因为觉 ...
- 【原】iOS学习之Socket
Socket在百度百科的定义 网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socket. 相关的描述 Socket的英文原义是“孔”或“插座”.作为BSD UNIX的进 ...
- Discuz!用户注册,登陆,生成帖子功能实现
<?php /* * Disucz!部分功能使用说明: */ /***************************************************************** ...
- How To Handle a Loss of Confidence in Yourself
Do you feel like you've lost confidence in yourself? Have you had strong self doubts? Perhaps you we ...