很高兴你能坚持学习到这里,
学到这里, 你已经是一只脚踏进了编程的大门!
这也意味着你已经学完了所有Python的基础语法!
当然, Python还有更高阶的语法.
但这些基础语法已经可以让你练练手了.
归根结蒂, 只有勤加练习, 巩固已经学到的知识, 你才能算真正地踏进了编程的大门!
下面我们将通过练习来巩固学到的知识.
注1: 本篇中所有需求的代码都设置断点在第一行, 并以调试模式运行, 且多次运行直到你明白为止
注2: 编写每个需求前, 请清空所有代码, 确保每次都是从0开始编写
需求1: 产生一个随机数(1-100之间)并打印其值, 当其值大于50时, 输出”师父”
# 需求1的示例
import random
a = random.randint(1, 100)
print(a)
if a > 50:
print("师父")
需求2: 产生一个随机数(100–200之间)并打印其值, 当其值大于150时, 输出”师父”
需求3: 产生一个随机数(1-100之间)并打印其值, 当其值大于50时, 输出”师父”, 否则则输出”徒儿” (提示: 使用if…else.. 语法)
[有示例] 需求4: 产生一个随机数(1-90之间)并打印其值, 当其值大于60时, 输出”悟空”, 小于等于60且大于等于30时, 输出”八戒’, 小于30时, 输出”沙憎”
# 需求4的示例, 记得使用调试模式运行
import random
a = random.randint(1, 90)
print(a)
if a > 60:
print("悟空")
else:
# and 是Python的一个关键字, 表示"且"的意思
if a <= 60 and a >= 30:
print("八戒")
else:
if a < 30:
print("沙憎")
需求5: 产生一个随机数(1-90之间)并打印其值, 当其值小于等于30时, 输出”沙师弟”, 大于30且小于60时, 输出”二师兄’, 大于等于60时, 输出”大师兄”
需求6: 产生一个随机数(1-90之间)并打印其值, 当其值小于30或大于60时, 输出”悟净或悟空”, 否则输出”悟能” (提示: 使用 or 关键字, 表示”或”的意思)
[有示例] 需求7: 用while计算1到20的总和并打印最终的累加值, 且当循环时的计数变量为偶数时, 输出”二师兄”
# 需求7的示例 (while和if的嵌套使用)
sum = 0
counter = 1
while counter <= 20:
sum = sum + counter
counter = counter + 1
if counter % 2 == 0: # %是余数运算符(当某数除以2时的余数为0时,则该数为偶数)
print(counter, "二师兄")
print("总和", sum)
需求8: 用while计算1到20的总和并打印最终的累加值, 且循环的计数变量为奇数时, 输出”大师兄或三师弟”
需求9: 用while计算1到30的总和并打印最终的累加值, 且循环的计数变量大于10且小于20时输出”二师兄”
需求10: 用while计算1到30的总和并打印最终的累加值, 且循环的计数变量小于10或大于20时输出”悟空或悟净”
[有示例] 需求11: 用while生成10个随机数(1-100之间)并输出值
# 需求11的示例, 记得使用调试模式运行
import random
counter = 0 # 从0开始的算的话, 下面判断就不用加等号, 同样可以循环到10次
while counter < 10:
counter = counter + 1
n = random.randint(1,100)
print(counter, n)
需求12: 用while生成10个随机数(1-5之间)并输出值, 且当随机数不等于1时, 输出”我不是1″; 当随机数等于5时, 输出”我是5″
需求13: 用while生成10个随机数(1-90之间)并输出值, 且当随机数大于等于60时, 输出”悟空”; 小于60且大于30时, 输出”八戒’; 小于等于30时, 输出”沙憎”
需求14: 用while生成10个随机数(1-90之间)并输出值, 且当随机数小于等于30或大于等于60时, 输出”悟净或悟空”; 其他情况则输出”悟能”
[有示例] 需求15: 用while生成30个随机数(1-90之间)并输出值, 且当循环中随机数大于70时, 跳过本轮循环; 当随机数小于10时, 中止当前循环. 并在最后打印累加值
# 需求15的示例, 记得使用调试模式运行
import random
sum = 0
counter = 1
while counter <= 30:
counter = counter + 1
n = random.randint(1, 90)
print(counter, n)
if n > 70:
continue # continue 是Python的一个关键字, 表示跳过后面语句, 重新回到循环头
if n < 10:
break # break 是Python的一个关键字, 表示中止当前循环
sum = sum + n
print("总和", sum)
需求16: 用while生成30个随机数(1-10之间)并输出值, 且当循环中随机数为偶数时, continue; 当随机数等于5时, break. 并在最后打印累加值
需求17: 用while生成30个随机数(1-100之间)并输出值, 且当循环中随机数大于95或小于5时, 中止当前循环; 当随机数大于等于40且小于等于60时, 跳过本轮循环. 并在最后打印累加值
[有示例] 需求18: 用while生成一个长度为5的随机字符串, 且当随机字符等于大写字母A时, 输出”我是A”
# 需求18的示例, 记得使用调试模式运行
import random
myString = ""
counter = 1
while counter <= 5:
counter = counter + 1
n = random.randint(65,67) # ASCII表中65-67是大写字母A-C的区间
s = chr(n)
print(counter, n, s)
if s == "A": # 字符串也用 == 做等价判断
print("我是A")
myString = myString + s
print("随机字符串是: " + myString)
需求19: 用while生成一个长度为10的随机字符串(字符只能是小写字母a-z, 且当随机字符等于c时, 输出”我是c位” — 注意程序是区分大小写的, 小写a-z编码值请查看ASCII码表
需求20: 用while生成一个长度为20的随机字符串(范围在H-N), 且当随机字符等于H或N时, 输出”我是H或我是N, 我是?“, 当随机字符不等于I且不等于M时, 输出”我不是I且我不是M, 我是?” — 问号是当前此随机字符
最后, 当你已经可以不用看着示例写出以上所有需求时, 请自我测试.
在60分钟内完成测试, 你就迈进了Python编程的大门!
[下载] Python入门测试源码
(1-3) if算术
(4-6) if算术 + 逻辑
(7-8) while + if算术
(9-10) while + if算术 + 逻辑
(11) while + 随机数
(12) while + 随机数 + if算术
(13-14) while + 随机数 + if算术 + 逻辑
(15-16) while + 随机数 + break,continue + if算术
(17) while + 随机数 + break,continue + if算术 + 逻辑
(18-19) while + 随机字符串 + if算术
(20) while + 随机字符串 + if算术 + 逻辑