Pyhton核心编程-Chap2习题-DIY
在学Python,在看《Python核心编程》的pdf,做了Chap2的题目,答案为DIY
# Filename: 2-11.py
# Author: ChrisZZ
mylist = [1, 2, 3, 4, 6]
sum = 0
for i in mylist:
sum = sum + i
average = sum * 1.0 / len(mylist)
while True:
print 'Here we have a list:', mylist
option = raw_input('Whatyou gonna know(sum/average/exit)?')
if option == 'sum':
print 'the sum of the list is', sum
elif option == 'average':
print 'the average of the list is', average
elif option == 'exit':
print 'Bye'
break
else:
print 'Wrong option.Repeat.' # Filename: 2-5.py
# Author: ChrisZZ
i = 0
while i <= 10:
print i
i = i + 1 for j in range(11):
print j # Filename: 2-15.py
# Author: ChrisZZ
print 'Please input 3 number.'
print 'I will sort them without using sort algo'
a = float(raw_input('the first number'))
b = float(raw_input('the second number'))
c = float(raw_input('the third number'))
res1 = (a - b) * (a - c)
mylist = []
if res1 < 0: # a is the middle
if b > c:
mylist = [b, a, c]
else:
mylist = [c, a, b]
else:
if a > b and b > c:
mylist = [a, b, c]
elif a > c and c > b:
mylist = [a, c, b]
elif a < b and b < c:
mylist = [c, b, a]
elif a < c and c < b:
mylist = [b, c, a] print mylist # Filename: 2-10.py
# Author: ChrisZZ
while True:
num = float(raw_input('Enter a number in range(1,100):'))
if num > 100 or num < 0:
print 'not a good number. repeat.'
else:
print 'nice number.bye'
break # Filename: 2-8.py
# Author: ChrisZZ
mylist = [1, 2, 3, 4, 5]
sumW = 0
i = 0
while i < len(mylist):
sumW = sumW + mylist[i]
i = i + 1
print sumW sumF = 0
for i in mylist:
sumF = sumF + i
print sumF # Filename: 2-7.py
# Author: ChrisZZ
s = raw_input('Enter a string:')
print 'while loop:'
i = len(s)
while i > 0:
print s[-i]
i = i - 1 print 'for loop:'
for ch in s:
print ch # Filename: 2-6.py
# Author: ChrisZZ
num = float(raw_input('Enter a number:'))
if num < .0:
print 'Negative number'
elif num > .0:
print 'Positive number'
else:
print 'Zero'
PS:这些题目都是分开写的py脚本,自己写了另一个脚本把他们重定向到了一个叫做result.txt的文件中,习题在~/workspace/python/xiti/路径,处理的脚本在~/workspace/python/,具体如下:
# Filename: process.py
# Author: ChrisZZ
import os
prefix = "/home/chris/workspace/python/xiti/"
filenames = os.listdir(prefix)
out = open('result.txt', 'w')
for k, v in enumerate(filenames):
f = open(prefix + v, 'r')
out.write('# Filename: %s\n' % v)
out.write('# Author: ChrisZZ\n')
for eachLine in f:
out.write(eachLine)
f.close()
out.write('\n')
out.close()
Pyhton核心编程-Chap2习题-DIY的更多相关文章
- pyhton 核心编程 正则表达式习题
方案一 import re #1. 识别下列字符串:“bat,” “bit,” “but,” “hat,” “hit,” 或 “hut” import re def test1(self): bt = ...
- Python核心编程课后习题-第六章
1. 字符串, string模块中是否有一种字符串方法或者函数可以帮我鉴定一下一个字符串是否是另一个大字符串的一部分? str1 = 'abcdefghijklmnopqrstuv' print st ...
- Python 核心编程 课后习题 第五章
2. 操作符. (a) 写一个函数, 计算并返回两个数的乘积. (b) 写一段代码调用这个函数, 并显示它的结果. def multi(a,b): return a * b result = mult ...
- python核心编程(第二版)习题
重新再看一遍python核心编程,把后面的习题都做一下.
- Qt on Android 核心编程
Qt on Android 核心编程(最好看的Qt编程书!CSDN博主foruok倾力奉献!) 安晓辉 著 ISBN 978-7-121-24457-5 2015年1月出版 定价:65.00元 4 ...
- windows核心编程 - 线程同步机制
线程同步机制 常用的线程同步机制有很多种,主要分为用户模式和内核对象两类:其中 用户模式包括:原子操作.关键代码段 内核对象包括:时间内核对象(Event).等待定时器内核对象(WaitableTim ...
- windows核心编程---第九章 同步设备IO与异步设备IO之同步IO
同步设备IO 所谓同步IO是指线程在发起IO请求后会被挂起,IO完成后继续执行. 异步IO是指:线程发起IO请求后并不会挂起而是继续执行.IO完毕后会得到设备的通知.而IO完成端口就是实现这种通知的很 ...
- windows核心编程---第八章 使用内核对象进行线程同步
使用内核对象进行线程同步. 前面我们介绍了用户模式下线程同步的几种方式.在用户模式下进行线程同步的最大好处就是速度非常快.因此当需要使用线程同步时用户模式下的线程同步是首选. 但是用户模式下的线程同步 ...
- Python核心编程这本书的一些错误
<Python核心编程第二版>这本书比<Python基础教程第二版修订版>详细很多,丰富了很多细节,虽然它是一本经典的入门书,但我发现还是存在一些明显的错误.在面向对象编程这一 ...
随机推荐
- Turn Off The Light HDU - 6307
题目大意 是有n个位置有灯,告诉你每个位置灯是开着的还是关着的,告诉你你的初始位置p,你可以往左或者右移动一步(在1到n的范围里移动), 并且在移动后必须按下开关(就是使当前打开的灯关上,当前未打开的 ...
- dubbo与springcloud对比与面试
对比:具体见此博客: http://www.sohu.com/a/108961261_468650 dubbo:组装机 springcloud:品牌机 打个不恰当的比喻:使用Dubbo构建的微服务架构 ...
- SSH框架搭建问题总结
1.eclipse中tomcat配置是否正确?能否在网页中访问的到? 如何在eclipse中配置tomcat就不说了,我们看下问题,在网页上访问tomcat的地址,为什么出现404错误呢? 解决办法: ...
- Java入门:Java环境变量PATH、CLASSPATH、JAVA_HOME
一些初学者在用java HelloWorld指令运行程序的时候出现: Exception in thread "main" java.lang.NoClassDefFoundErr ...
- Tomcat权威指南-读书摘要系列2
2. 配置Tomcat 2.1. 重定向Web应用程序的目录 将工程文件与Tomcat分离 复制conf和webapps文件夹到分离目录: 配置CATALINA_BASE环境变量,值为分离目录: 2. ...
- Hadoop生态圈-Hive的自定义函数之UDAF(User-Defined Aggregation Function)
Hadoop生态圈-Hive的自定义函数之UDAF(User-Defined Aggregation Function) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任.
- springboot 日期转化报错
问题场景: 使用Springboot框架搭建服务,传日期参数json参数为2016-08-15 17:00:00这种格式,springboot中不能识别,将其转化为对象对应的日期属性.而是抛出异常信息 ...
- React - 环境准备
1. 下载 node.js,在 https://nodejs.org/en/download/ 选择合适的版本. 2. 检查 node.js 是否安装成功. hueyMB:~ zhisenzheng$ ...
- MapReduce (MRV1)设计理念与基本架构
MapReduce 是一个分布式计算框架,主要由两部分组成:编程模型和运行时环境. 其中,编程模型为用户提供了非常易用的编程接口,用户只需要像编写串行程序一样实现几个简单的函数即可实现一个分布式程序, ...
- Mac下MySQL的卸载
先停止所有mysql有关进程. 打开控制台一次复制下列所有内容: sudo rm /usr/local/mysql sudo rm -rf /usr/local/mysql* sudo rm -rf ...