-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathch05.py
More file actions
109 lines (85 loc) · 2.81 KB
/
ch05.py
File metadata and controls
109 lines (85 loc) · 2.81 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
# 所有编程语言都要遵守的两条规则:1,语言结构,2,流程控制;
# 这两条规则控制了整个程序的运行步骤;
# 流程控制包括三种形式:1,按顺序控制流程,2,按条件控制流程,3,按循环结构控制流程;
# if语句的核心是:条件测试表达式,表达式有两个值:True和False;
# if语句条件测试不仅支持布尔类型,空None,数值,字符串,元组,列表,字典都可以;
# 测试表达式的值为False的情况:None, 布尔False, 数值0, 空字符串,空元组,空列表,空字典;
import random
# if语句
f = int(input('请输出一个数字:'))
if f > 0:
print('这是一个大于0的数字。')
elif f == 0:
print('这是0。')
else:
print('这是一个小于0的数字。')
# while语句,以及与if对比
g = 10
while g > 0: # 条件型循环
print(g)
g = g - 5 # 让条件发生变化的环节,否则成死循环
print('结束')
t = 10
if t > 0: # 只有一遍,不会循环
print(t)
t = t - 1
print('结束')
# for语句,range函数的特性
k = range(1, 20, 5)
print(k, type(k)) # 执行结果: range(1, 20, 5) <class 'range'>
for v in k: # 指针型循环,从头到尾,循环次数有限,根据对象不同,每次取一个字符,一个字段或一行等。
print(v, type(v))
# break语句
for x in range(10): # 每次取一个值
print(x, type(x))
if x % 2 != 0:
break # 跳出循环
# continue语句
for y in range(10): # 取字符串时,一次一个字符;取容器数据时,一次一个字段;取文件时,一次一行。
if y % 2 == 0:
continue # 再从头循环
print(y)
# else与while, for的组合
count = 0
while count < 5:
print(count, ' is less than 5')
count += 1
else: # else只在判断语句不成立时才会执行。
print(count, ' is not less than 5')
for item in range(5):
print(item, 'in for segment')
if item == 3:
break
else: # 判断语句没有不成立,所以else不会执行。
print(item, 'in for segment')
# 条件测试表达式
x1 = None
x2 = 0
x3 = 3.5
x4 = [1, 2, 3]
if x1:
print(x1)
if x2:
print(x2)
if x3:
print(x3)
if x3 > 0 and (x2 < 2): # 括号要不要都行,'and'是'与','or'是'或'。
print('True')
if 2 in x4:
print(2)
# 整体结果取决于哪个值?
res1 = [] and 0 # res1 = []
res2 = 5 or {} # res2 = 5
res3 = () or 'str' # res3 = 'str'
# Games
m = random.randint(1, 100)
print('random is', m)
while True:
n = int(input('Number 1 ~ 100 : '))
if n == m:
print('You are right.')
break
elif n > m:
print('It is too big.')
else:
print('It is too small.')