首页 » 父与子的编程之旅:与小卡特一起学Python » 父与子的编程之旅:与小卡特一起学Python全文在线阅读

《父与子的编程之旅:与小卡特一起学Python》7.9 使用 not

关灯直达底部

还可以用 not 把比较倒过来,表示相反的逻辑。

color = raw_input(/"Enter your favorite color: /")if color == /"red/" or color == /"blue/" or color == /"green/":    print /"You are allowed to play this game./"else:    print /"Sorry, you can/'t play the game./"  

这行代码

if not (age < 8):  

与这行代码:

if age >= 8:  

两者的含义是一样的。在这两种情况下,如果年龄是 8 岁或者超过 8 岁就会执行代码块,如果年龄小于 8 就不会执行。

第 4 章中,我们见过诸如 +、-、* 和 / 等数学运算符。在本章中,我们了解了比较操作符 <、>、== 等。andornot 关键字也是操作符。它们被称为逻辑操作符(logical operator)。这些操作符用来修改比较,可以结合两个或多个比较(andor),或者取反(not)。

表 7-1 列出了目前为止我们讨论过的所有操作符。

表 7-1 数学和比较操作符列表

操作符名字作用数学运算符=赋值将一个值赋至一个名(变量)+加两个数相加。这个操作符也可以用来连接字符串-减两个数相减+=自增将一个数增 1-=自减将一个数减 1*乘两个数相乘/除两个数相除。如果两个数都是整数,结果只是整数商而没有余数%取余得到两个数整除的余数**求幂将一个数自乘得到幂。这个数以及幂可以是整数或浮点数比较操作符==相等检查两个东西是否相等小于检查第一个数是否小于第二个数>大于检查第一个数是否大于第二个数>小于或等于检查第一个数是否小于或等于第二个数>=大于或等于检查第一个数是否大于或等于第二个数!=不等于检查两个东西是否不相等(这两个操作符都可以使用)>

你可能想在这一页上夹个书签,这样下次就能很容易地查阅这个表了。

你学到了什么

在这一章,你学到了以下内容。

  • 比较测试和关系操作符。

  • 缩进和代码块。

  • 使用 andor 结合测试。

  • 使用 not 来进行反向测试。

测试题

1. 运行这个程序会得到什么输出:

my_number = 7if my_number < 20:    print /'Under 20/'else:    print /'20 or over/'  

2. 基于第一个问题中的程序,如果把 my_number 改为 25,输出会是什么?

3. 要检查一个数是否大于 30 但小于或等于 40,要用哪种 if 语句?

4. 要检查用户输入的字母“Q”是大写还是小写,要使用哪种 if 语句?

动手试一试

1. 一家商场在降价促销。如果购买金额低于或等于 10 元,会给 10% 的折扣,如果购买金额大于 10 元,会给 20% 的折扣。编写一个程序,询问购买价格,再显示折扣(10% 或 20%)和最终价格。

2. 一个足球队在寻找年龄在 10 到 12 岁之间的小女孩加入。编写一个程序,询问用户的年龄和性别(m 表示男性,f 表示女性)。显示一条消息指出这个人是否可以加入球队。

额外提示:要合理地建立程序,如果用户不是女孩就不必询问年龄。

3. 你在长途旅行,刚到一个加油站,距下一个加油站还有 200 km。编写一个程序确定是不是需要在这里加油,还是可以等到下一个加油站再加油。

这个程序应当问下面几个问题。

  • 你的油箱有多大(单位是升)?

  • 油箱有多满(按百分比,例如,半满就是 50%)?

  • 你的汽车每升油可以走多远(km)?

输出应该像这样:

Size of tank:  60percent full:  40km per liter:  10You can go another 240 kmThe next gas station is 200 km awayYou can wait for the next station.  

Size of tank:  60percent full:  30km per liter:  8You can go another 144 kmThe next gas station is 200 km awayGet gas now!  

额外提示:程序中包含一个 5 升的缓冲区,以防油表不准。

4. 建立一个程序,用户必须输入密码才能使用这个程序。你当然知道密码(因为它会写在你的代码中)。不过,你的朋友要得到这个密码就必须问你或者直接猜,也可以学习足够的 Python 知识查看代码来找出密码!

对程序没什么要求,可以是你已经编写的程序,也可以是一个非常简单的程序,只在用户输入正确的口令时显示一条“You/'re in!”之类的消息。