Python编程快速上手-让繁琐工作自动化-第二章习题及其答案
Python编程快速上手-让繁琐工作自动化-第二章习题及其答案
1、布尔数据类型的两个值是什么?如何拼写?
答:True和False,使用大写的T和大写的F,其他字母是小写。
2、3个布尔操作符是什么?
答:and、or和not。
3、写出每个布尔操作符的真值表(也就是操作数的每种可能组合,以及操作的结果)
答:
and:
True and True -> True
True and False -> False
False and True -> False
Fasle and False -> False
or:
True or True -> True
True or False -> True
False or True -> True
False or False -> False
not:
not True -> False
not False -> True
4、以下表达式求值的结果是什么?
4.1、( 5 > 4 ) and ( 3 == 5 )
4.2、not ( 5 > 4 )
4.3、( 5> 4 ) or ( 3 == 5 )
4.4、not (( 5 > 4 ) or ( 3 == 5 ))
4.5、( True and True ) and ( True == False )
4.6、( not False ) or ( not True )
答:
4.1、
(5>4) and (3 == 5)
True and False
False # 最终结果
4.2、
not (5 > 4)
not True
False # 最终结果
4.3、
( 5> 4 ) or ( 3 == 5 )
True or False
True # 最终结果
4.4、
not (( 5 > 4 ) or ( 3 == 5 ))
not (True or False)
not True
False # 最终结果
4.5、
( True and True ) and ( True == False )
True and False
False # 最终结果
4.6、
( not False ) or ( not True )
True or Fasle
True # 最终结果
5、6个比较操作符是什么?
答:==、!=、<、>、<=和>=。
6、等于操作符和赋值操作符的区别是什么?
答:==是等于操作符,它比较两个值,求值为一个布尔值,而=是赋值操作符,将值保存在变量中。
7、解释什么是条件,可以在哪里使用条件?
答:条件是一个表达式,它用于控制流语句中,求值为一个布尔值。
8、识别这段代码中的3个语句块
spam = 0
if sapm == 10:
print('eggs')
if spam > 5:
print('bacon')
else:
print('ham')
print('spam')
print('spam')
答:3个语句块是if语句中的全部内容,以及print('bacon')和print('ham')这两行。
print('eggs')
if spam > 5:
print('bacon')
else:
print('ham')
print('spam')
9、编写代码,如果变量spam中存放1,就打印Hello,如果变量中存放2,就打印Howdy,如果变量中存放其它值,就打印Greetings
答:
#!/usr/bin/env python3
# -*- coding:utf-8 -*-
# Author: davie
spam = input("请输入1或者2->:")
if spam.isdigit():
spam = int(spam)
if spam == 1:
print("Hello %s"%spam)
elif spam == 2:
print("Howdy %s"%spam)
else:
print("Greetings!")
else:
print("您输入的不是数字1或者2")
10、如果程序陷在一个无限循环中,你可以按什么键?
答:按Ctrl-C来停止陷在无线循环中的程序。
11、break和continue之间的区别是什么?
答:
break:
终止整个循环:当循环或判断执行到break语句时,即使判断条件为True或者序列尚未完全被历遍,都会跳出循环或判断。
continue
跳出当次循环。当循环或判断执行到continue语句时,continue后的语句将不再执行,会跳出当次循环,继续执行循环中的下一次循环。
12、在for循环中,range(10)、range(0,10)和range(0,10,1)之间的区别是什么?
答:
效果一样,都是打印出0-9的数字。range(10)调用产生的范围是从0直到(但不包括)10,range(0,10)明确告诉循环从0开始,range(0,10,1)
明确告诉循环每次迭代变量加1。
13、编写一小段程序,利用for循环,打印出从1到10数字。然后利用while循环,编写一个等价的程序,打印出从1到10的数字
# 编写一小段程序,利用for循环,打印出从1到10数字。
for i in range(1,11):
print('for loop : %s'%i)
# 利用while循环,编写一个程序,打印出从1到10的数字
count = 0
while count <10:
count += 1
print("while loop:%s"%count)
14、如何在名为spam的模块中,有一个名为bacon()的函数,那么在导入spam模块后,如何调用它?
答:
from spam import bacon
spam.bacon()
15、附加题:在网上查找round()和abs()函数,弄清楚它们的作用。在交互式环境中尝试使用它们
答:
round():四舍五入
abs():求绝对值
>>> round(3.1414926,3)
3.141
>>> round(3.1415926,3)
3.142
>>> round('4.5678',1)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: type str doesn't define __round__ method
>>>
>>> abs(-10)
10
>>> abs(8)
8
>>> abs(')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: bad operand type for abs(): 'str'
>>>
这两个都必须接受数字类型的数据,否则会报错。
Python编程快速上手-让繁琐工作自动化-第二章习题及其答案的更多相关文章
- 入门python:《Python编程快速上手让繁琐工作自动化》中英文PDF+代码
入门推荐学习<python编程快速上手>前6章是python的基础知识,通俗易懂地讲解基础,初学者容易犯错的地方,都会指出来.从第三章开始,每章都有一个实践项目,用来巩固前面所学的知识. ...
- Python编程快速上手 让繁琐工作自动化 - 专业程序员的养成完整版PDF免费下载_百度云盘
Python编程快速上手 让繁琐工作自动化 - 专业程序员的养成完整版PDF免费下载_百度云盘 提取码:7qm4 有关本书 累计销售超过10万册 零基础编程者的不二之选 基于Python3编写 通用 ...
- 《Python编程快速上手 —让繁琐工作自动化》|百度网盘免费下载|Python自动化办公
Python编程快速上手—让繁琐工作自动化 提取码:u8vj 如今,人们面临的大多数任务都可以通过编写计算机软件来完成. Python 是一种解释型.面向对象.动态数据类型的高级程序设计语言.通过 P ...
- python经典书记必读:Python编程快速上手 让繁琐工作自动化
所属网站分类: 资源下载 > python电子书 作者:熊猫烧香 链接:http://www.pythonheidong.com/blog/article/69/ 来源:python黑洞网,专注 ...
- Python编程快速上手——让繁琐工作自动化学习笔记
第一部分 基本语法 1.字符串不能直接和数字相加,要用str()转一下:但是可以和数字相乘,用于表示多个字符串复制:字符串不能和浮点数直接结合,字符串可以和字符串直接相加: 2.输入函数用input( ...
- Python 编程快速上手 第十八章 用 GUI 自动化控制键盘和鼠标
前言 这一章节讲述了如何实现 GUI 自动化,首先讲了一些处理异常状况的方法,然后是关于 GUI 自动化的内容,主要有三个部分: 控制鼠标 图像识别 控制键盘 下面引用一段话: 请将 GUI 自动化看 ...
- 《python编程快速上手》
第一部分 编程基础 @表达式 ** % // @ >>> int(3.4) 3 >>>round(3.555,2)3.56 @判断条件时:0和0.0和‘’都是Fal ...
- python编程快速上手之第10章实践项目参考答案
本章主要讲了python程序的调试,当程序有BUG或异常的时候,我们如何调试代码找出问题点.其实在本章之前的章节我们做练习的时候都会遇到各种各样的错语和异常,最初当不知道程序哪里出错的情况下不可否 ...
- Python 编程快速上手 第十五章 保持时间,计划任务和启动程序
前言 这一章节的主要内容是: 处理时间类型的数据(使用python 的两个模块: time 和 datetime 来处理) 创建多个线程 (使用 threading 模块来创建多个线程) 进行多个进程 ...
随机推荐
- Django-urls路由系统
Django的路由系统 Django 1.11版本 URLConf官方文档 URL配置(URLconf)就像Django 所支撑网站的目录.它的本质是URL与要为该URL调用的视图函数之间的映射表. ...
- Javascript和Jquery语法对比总结
目的 相信大家都知道jq是js的一个类库,是为了方便我们开发前端,但是笔者在刚开始学习js和jq时经常将两者的语法记混和混用,所以整理下两者实现相同功能之前的语法区别. 声明变量 javascript ...
- HDU 1556-Color the ball-树状数组
树状数组的成段更新. 首先要明白,insert函数的意思是更新某一点值,query函数的意思是从起点到某一点的和. 更新[a,b]段时,在a点插入一个1,在b+1点插入一个-1.这时,query(a) ...
- P1020 导弹拦截
思路:贪心思路 拿比飞来的导弹高并且高度和飞来的导弹最相近的拦截系统去接, 如果全部都比导弹矮,那就新开一个拦截系统 #include<cstdio> #include<string ...
- 【XSY1295】calc n个点n条边无向连通图计数 prufer序列
题目大意 求\(n\)个点\(n\)条边的无向连通图的个数 \(n\leq 5000\) 题解 显然是一个环上有很多外向树. 首先有一个东西:\(n\)个点选\(k\)个点作为树的根的生成森林个数为: ...
- Codeforces 700 C. Break Up(Tarjan求桥)
题意 给你一个有 \(n\) 个点, \(m\) 条边的无向图,每条有边权 \(w_i\) ,现在要选择至多两条边断开,使得 \(S, T\) 不连通,并且使得边权和尽量小. \(n \le 1000 ...
- Codeforces Round #545 Div1 题解
Codeforces Round #545 Div1 题解 来写题解啦QwQ 本来想上红的,结果没做出D.... A. Skyscrapers CF1137A 题意 给定一个\(n*m\)的网格,每个 ...
- rt-thread 学习路线
@2019-01-25 [小记] > BSP制作与使用 将板载资源.芯片外设全部制作BSP,做到使用时只需在 menuconfig 中配置即用
- IIS最小配置
目的 : IIS按需要配置练习 测试环境 IIS 10 WIN10 1.安装IIS与建立网站 安装IIS略,服务器版用添加角色,用户版添加删除WINDOWS组件. 装好IIS之后,建一个网 ...
- 「HNOI2016」网络 解题报告
「HNOI2016」网络 我有一个绝妙的可持久化树套树思路,可惜的是,它的空间是\(n\log^2 n\)的... 注意到对一个询问,我们可以二分答案 然后统计经过这个点大于当前答案的路径条数,如果这 ...