30天学会 Python: Day 3-世界线分歧

布林

布林是一种值只有 truefalse 两种的资料类型,可以用来表示条件成立与否,或是用於进行逻辑判断

在 Python 的程序码中,true 和 false 的字首要大写(True, False)

比较/关系 运算

比较两笔数值间关系的运算,当两者的关系成立时会得到 True ,不成立会得到 False

比较/关系 运算子

程序语言中的关系运算子有:

  • ==: 两者是否相等
  • !=: 两者是否不相等
  • >: 左边是否大於右边
  • <: 左边是否小於右边
  • >=: 左边是否大於等於右边
  • <=: 左边是否小於等於右边

可以用 print() 显示运算的结果

a=100
b=10
print(a==b)
print(a!=b)
print(a>b)
print(a<b)
print(a>=b)
print(a<>=b)

if

代表 如果...就执行... 的概念,可以根据不同的条件执行不同指令,语法是:

if <条件>:
	<条件成立时执行的内容>
             ⋮
	<条件成立时执行的内容>

这里的条件是一个布林值,所以常和前面讲的比较运算一起使用,当条件成立(条件的值为 True) 时执行下方有缩排(左边有空格)的那段程序码,如果不成立则会跳过

缩排使用的空格符号和数量没有硬性规定,只要同一段指令有对齐就可以了

范例中,第3行的 print() 只有在输入的数值超过 100 才会执行,因为最後一行的 print()if 之外,所以无论如何这一行一定会被执行

x = int(input())
if x>100:
    print("超过一百分")
print("End")

if-else

如果要在条件不成立时执行另一段指令,可以用另外写一个 if 搭配完全相反的条件

x = int(input())

if x%2==0:
    print(x, "是偶数")
if x%2==1:
    print(x, "是奇数")

也可以在 if 後面加上 else,变成:

if <条件>:
	<条件成立时执行的内容>
             ⋮
	<条件成立时执行的内容>
else:
	<条件不成立时执行的内容>
             ⋮
	<条件不成立时执行的内容>

也就是 如果...就执行...,否则执行...

所以上面的例子可以改成

x = int(input())

if x%2==0:
    print(x, "是偶数")
else:
    print(x, "是奇数")

if-elif

一组 if-else 只能产生两种不同的情形(条件成立和条件不成立),如果要判断更多不同的条件,可以在 ifelse 间加入 elif

if <条件1>:
	<条件成立时执行的内容>
             ⋮
	<条件成立时执行的内容>
elif  <条件2>:
	<条件成立时执行的内容>
             ⋮
	<条件成立时执行的内容>
else:
	<条件不成立时执行的内容>
             ⋮
	<条件不成立时执行的内容>

也就是 如果...,就...,否则如果...,就...,以上皆不成立则...

score = int(input())
if score>=60:
	print("PASS")
elif score >=40:
	print("RETAKE")
else:
	print("FAIL")

ifelse 间可以有多个 elif

score = int(input())
if score==100:
	print("PASS")
elif score>=80
	print("GREAT")
elif score>=60:
	print("PASS")
elif score>=40:
	print("RETAKE")
else:
	print("FAIL")

elifelse 不一定要同时使用

x = int(intput())

if x>1000:
	x=x-1000
elif x>100:
	x=x-100
print(x)

逻辑运算

参与运算的资料以及运算结果都是布林值的运算,可用来表达复杂的条件

常用的逻辑运算有:

  • not: 表示相反,会让 True 变成 FalseFalse 变成 True
print(not True)
print(not False)

  • and: 表示而且,当 and 的左右两边都是 True 时为 True,其他时候都是 False
print(True and True)
print(False and True)
print(True and False)
print(False and False)

  • or: 表示而且,只要 or 的其中一边是 True 就会得到 True,所以只有两边都是 False 时为 False
print(True or True)
print(False or True)
print(True or False)
print(False or False)

a b not a a and b a or b
True True False True True
False True True False True
True False False True
False False False False

结合 if

如果有多个条件,且所有条件都要符合才执行,可以用 and 连接多个条件

下面范例中,只有输入的数大於100 x 是偶数时才会执行 print()

x = int(input())
if x>100 and x%2==0:
	print('yes')

下面范例中,只有输入的数大於100 x 是偶数时才会执行

x = int(input())
if x>100 or x%2==0:
	print('yes')

利用 not 可以产生相反的条件

x = int(input())
if x%2==0:
    print(x, "是偶数")
if not x%2==0:
    print(x, "是奇数")

挖坑清单:

  • 空字串的用途
  • 物件

<<:  [DAY 6] _stm32f103c8t6_暂存器查找方法

>>:  [Day4][笔记] React JSX

Urban Kitchen 名厨都汇自助餐厅 #万豪酒店 #澳门银河渡假村 Galaxy Macau

因为朋友说,澳门很值得去看看,所以我就冲了~ 2016年,我有一位很要好的「酒肉朋友」(就是在「韩乡...

在软件开发项目中使用开源组件,最不关心的是测试覆盖率

-流行的 F/LOSS 许可证之间的兼容性关系(来源:Carlo Daffara) 在评估开源组件...

如何修复“硬碟仅显示一半容量”

通过本文,您将能够解决Windows 10/8/7中的“硬碟仅显示少量容量”问题,并使用“Bitwa...

[Day 3] - 『转职工作的Lessons learned』 - 资料库转换

今天来分享一下转职後第一个工作任务:将资料从MongoDB转到PostgreSQL 2020年10月...

[Day 28] Android Studio 七日陨石开发:把 tflite 模型放进 app

0. 前言 距离真正完成表情辨识的App, 只差把辨识图像的功能实作出来, 在这里我们必须将Day2...