python核心编程笔记——Chapter8
Chapter8.条件和循环
这一章感觉有用的点并不多,在我眼里就只有迭代器,列表解析和生成器表达式值得研究而已。
8.2.循环,难度不大。
#!usr/bin/env python
#-*-coding=utf-8-*- def ran(From,To,Increment):
return range(From,To+Increment,Increment) if __name__ == '__main__':
print ran(2,26,4)
8.3.range()
>>> range(0,10)
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> range(3,21,3)
[3, 6, 9, 12, 15, 18]
>>> range(-20,1080,220)
[-20, 200, 420, 640, 860]
8.5.约数,完成一个名为getfactors()的函数。它接受一个整型作为参数,返回它所有约数的列表,包含1和它本身。可以考虑使用列表解析。
#!usr/bin/env python
#-*-coding=utf-8-*- def getfactors(n):
return [x for x in range(1,n+1) if n % x == 0] if __name__ == '__main__':
print getfactors(6)
8.6素因数分解,本来想用很简洁的方式去解决的,但是发现自己没那本事,呜呜。。
#!usr/bin/env python
#-*-coding=utf-8-*- def getfactors(n):
return [x for x in range(1,n+1) if n % x == 0] def factors(n):
m = []
while n > 1:
for x in range(2,n+1):
if n % x == 0:
m.append(x)
n /= x
break
return m if __name__ == '__main__':
print factors(20)
8.10.文本处理,要求统计一篇文本上面的单词个数。试一下吧(先考虑单词之间只有空格的情况)
#!usr/bin/env python
#-*-coding=utf-8-*- def num_of_word(filename):
return len([y for x in open(filename) for y in x.split()]) if __name__ == '__main__':
print num_of_word('/home/dzhwen/python文件/Homework/Chapter8/123.txt')
其他题目没什么典型性,就不细讲了。
就这样,请多多指教!
python核心编程笔记——Chapter8的更多相关文章
- python核心编程--笔记
python核心编程--笔记 的解释器options: 1.1 –d 提供调试输出 1.2 –O 生成优化的字节码(生成.pyo文件) 1.3 –S 不导入site模块以在启动时查找pyt ...
- python核心编程--笔记(不定时跟新)(转)
的解释器options: 1.1 –d 提供调试输出 1.2 –O 生成优化的字节码(生成.pyo文件) 1.3 –S 不导入site模块以在启动时查找python路径 1.4 –v ...
- python核心编程笔记(转)
解释器options: 1.1 –d 提供调试输出 1.2 –O 生成优化的字节码(生成.pyo文件) 1.3 –S 不导入site模块以在启动时查找python路径 1.4 –v 冗 ...
- Python核心编程笔记(类)
Python并不强求你以面向对象的方式编程(与Java不同) # coding=utf8 class FooClass(object): version = 0.1 def __init__(self ...
- Python核心编程笔记--动态属性
一.动态语言与静态语言 1.1 静态语言特点: a. 在定义变量时需要指定变量的类型,根据指定的类型来确定变量所占的内存空间 b. 需要经过编译才能运行 c. 在代码编译后,运行过程不能对代码进行操作 ...
- Python核心编程笔记 第三章
3.1 语句和语法 3.1.1 注释( # ) 3.1.2 继续( \ ) 一般使用换行分隔,也就是说一行一个语句.一行过长的语句可以使用反斜杠( \ ) 分 ...
- Python核心编程笔记 第二章
2.1 程序输出:print语句 可以使用print语句显示变量的字符串表示,或者仅用变量名查看该变量的原始值. 2.2 程序输出和raw_input()内建函数 ...
- python核心编程笔记——Chapter7
Chapter7.映像和集合类型 最近临到期末,真的被各种复习,各种大作业缠住,想想已经荒废了python的学习1个月了.现在失去了昔日对python的触觉和要写简洁优雅代码的感觉,所以临到期末毅然继 ...
- python核心编程笔记
1.python的对象是通过引用传递的. 2.多元赋值: x, y = y, x
随机推荐
- web国际化,在不同的浏览环境,显示不同的语言
所谓国际化就是支持多种语言,web应用在不同的浏览环境中可以显示出不同的语言.假设我们正在开发一个支持多国语言的Web应用程序,要求系统能够根据客户端的系统的语言类型返回对应的界面:英文的操作系统返回 ...
- Java网络编程二:Socket详解
Socket又称套接字,是连接运行在网络上两个程序间的双向通讯的端点. 一.使用Socket进行网络通信的过程 服务端:服务器程序将一个套接字绑定到一个特定的端口,并通过此套接字等待和监听客户端的连接 ...
- Robot Framework 教程 (5) - 连接Oracel数据库
Robot Framework 提供了多种Library.其中Database Library可用来连接操作数据库. 1.安装Database Library 打开Robot Framework官网, ...
- maven编译,控制台中文乱码解决方案
如下图,在使用maven运行后,在控制台看到中文展示乱码 出现这个的原因是源码使用UTF-8,但是maven编译的时候使用GBK标准,如下图 为了让maven编译的时候使用UTF-8标准,使用在p ...
- [转帖]go 的goroutine 以及 channel 的简介.
进程,线程的概念在操作系统的书上已经有详细的介绍.进程是内存资源管理和cpu调度的执行单元.为了有效利用多核处理器的优势,将进程进一步细分,允许一个进程里存在多个线程,这多个线程还是共享同一片内存空间 ...
- QtCreator源码分析—2.启动主程序(4篇)
QtCreator采用插件体系结构.主程序启动插件管理器(PluginManager),再通过插件管理器加载其插件,QtCreator的所有功能均使用插件实现. 我们先来分析主程序对插件管理器的主要操 ...
- jQuery : 有关TypeError: invalid ‘in’ operand obj的错误
参考 lwx2615 的博客 ,网站: http://blog.csdn.net/lwx2615/article/details/9668777 由PHP返回一个json数据 $.ajax({ ur ...
- Hibernate性能优化之SessionFactory重用
Hibernate优化的方式有很多,如缓存.延迟加载以及与SQL合理映射,通过对SessionFactory使用的优化是最基础的. SessionFactory负责创建Session实例,Sessio ...
- Yarn源码分析1(Hadoop2.7.2)
在Hadoop中,调度框架YARN(Yet Another Resource Negotiater)是基于事件的,调度的是MapReduce的Application.Application有一系列的状 ...
- 【Java并发编程】之五:volatile变量修饰符—意料之外的问题
volatile用处说明 在JDK1.2之前,Java的内存模型实现总是从主存(即共享内存)读取变量,是不需要进行特别的注意的.而随着JVM的成熟和优化,现在在多线程环境下volatile关键字的 ...