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编程快速上手-让繁琐工作自动化-第二章习题及其答案的更多相关文章

  1. 入门python:《Python编程快速上手让繁琐工作自动化》中英文PDF+代码

    入门推荐学习<python编程快速上手>前6章是python的基础知识,通俗易懂地讲解基础,初学者容易犯错的地方,都会指出来.从第三章开始,每章都有一个实践项目,用来巩固前面所学的知识. ...

  2. Python编程快速上手 让繁琐工作自动化 - 专业程序员的养成完整版PDF免费下载_百度云盘

    Python编程快速上手  让繁琐工作自动化 - 专业程序员的养成完整版PDF免费下载_百度云盘 提取码:7qm4 有关本书 累计销售超过10万册 零基础编程者的不二之选 基于Python3编写 通用 ...

  3. 《Python编程快速上手 —让繁琐工作自动化》|百度网盘免费下载|Python自动化办公

    Python编程快速上手—让繁琐工作自动化 提取码:u8vj 如今,人们面临的大多数任务都可以通过编写计算机软件来完成. Python 是一种解释型.面向对象.动态数据类型的高级程序设计语言.通过 P ...

  4. python经典书记必读:Python编程快速上手 让繁琐工作自动化

    所属网站分类: 资源下载 > python电子书 作者:熊猫烧香 链接:http://www.pythonheidong.com/blog/article/69/ 来源:python黑洞网,专注 ...

  5. Python编程快速上手——让繁琐工作自动化学习笔记

    第一部分 基本语法 1.字符串不能直接和数字相加,要用str()转一下:但是可以和数字相乘,用于表示多个字符串复制:字符串不能和浮点数直接结合,字符串可以和字符串直接相加: 2.输入函数用input( ...

  6. Python 编程快速上手 第十八章 用 GUI 自动化控制键盘和鼠标

    前言 这一章节讲述了如何实现 GUI 自动化,首先讲了一些处理异常状况的方法,然后是关于 GUI 自动化的内容,主要有三个部分: 控制鼠标 图像识别 控制键盘 下面引用一段话: 请将 GUI 自动化看 ...

  7. 《python编程快速上手》

    第一部分 编程基础 @表达式 ** % // @ >>> int(3.4) 3 >>>round(3.555,2)3.56 @判断条件时:0和0.0和‘’都是Fal ...

  8. python编程快速上手之第10章实践项目参考答案

      本章主要讲了python程序的调试,当程序有BUG或异常的时候,我们如何调试代码找出问题点.其实在本章之前的章节我们做练习的时候都会遇到各种各样的错语和异常,最初当不知道程序哪里出错的情况下不可否 ...

  9. Python 编程快速上手 第十五章 保持时间,计划任务和启动程序

    前言 这一章节的主要内容是: 处理时间类型的数据(使用python 的两个模块: time 和 datetime 来处理) 创建多个线程 (使用 threading 模块来创建多个线程) 进行多个进程 ...

随机推荐

  1. Vue混合mixins

    前面的话 本文将详细介绍Vue混合mixins 概述 混合 (mixins) 是一种分发 Vue 组件中可复用功能的非常灵活的方式.混合对象可以包含任意组件选项.以组件使用混合对象时,所有混合对象的选 ...

  2. Deploy .NET Core with Docker

    Creating a .NET Core project If you already have an existing .NET Core project you are more than wel ...

  3. 洛谷P3389 【模板】高斯消元法

    P3389 [模板]高斯消元法 题目背景 Gauss消元 题目描述 给定一个线性方程组,对其求解 输入输出格式 输入格式: 第一行,一个正整数 n 第二至 n+1行,每行 n+1 个整数,为a1​,a ...

  4. Linux下git的使用——将已有项目放到github上

    本地已经有一个项目了,需要将该项目放到github上,怎么操作? 步骤: 本地安装git,有github账号是前提. (1)先在github创建一个空的仓库,并复制链接地址.使用https,以.git ...

  5. python 机械学习之sklearn的数据正规化

    from sklearn import preprocessing    #导入sklearn的处理函数用于处理一些大值数据 x_train, x_test, y_train, y_test = tr ...

  6. BZOJ5119 生成树计数(prufer+生成函数+分治FFT+多项式exp)

    https://www.luogu.org/problemnew/solution/P4002 神树的题解写的很清楚了.稍微补充: 1.[x^i]ln(A(ax))=a^i[x^i]ln(A(x)), ...

  7. P1880 [NOI1995]石子合并 区间dp+拆环成链

    思路 :一道经典的区间dp  唯一不同的时候 终点和起点相连  所以要拆环成链  只需要把1-n的数组在n+1-2*n复制一遍就行了 #include<bits/stdc++.h> usi ...

  8. 大学jsp实验七--JavaBean在JSP中的应用

    值bean的应用 (1)若有如下图所示的两个JSP页面,在第一个的页面的表单中填写相应内容,提交后再显示用户的提交信息.使用JavaBean的方式实现上述效果,请写出相应的代码. bean文件:Tes ...

  9. 使用python和selenium写一个百度搜索的case

    今天练习的内容主要写了一个小功能,在百度上搜索某词汇,然后实现web上的back功能 代码如下: import unittest from selenium import webdriver from ...

  10. 【BZOJ1015】【JSOI2008】星球大战 并查集

    题目大意 给你一张\(n\)个点\(m\)条边的无向图,有\(q\)次操作,每次删掉一个点以及和这个点相邻的边,求最开始和每次删完点后的连通块个数. \(q\leq n\leq 400000,m\le ...