课堂ppt
https://pdf.ceshiren.com/book/python_programming/ppt/[训练营]python脚本编写实战1.html#/6
课堂xmind脑图
0320Python训练营.xmind.zip (53.8 KB)
实战内容
python基础语法
python流程控制
python内置数据结构
python函数
Life is like a box of chocolates that you will never know what you gonna get.
hogwarts = "霍格沃兹" + str(666)
实战题目
0320随堂实战练习题 - 就业班 / 就业班-3期 - 测试人社区 (ceshiren.com)
题目1:
看过《射雕英雄传》的人,可能会记得,黄蓉与瑛姑见面时,曾出过这样一道数学题:今有物不知其数,三三数之剩二,五五数之剩三,七七数之余二,问几何?
要求:请编写一段python代码,找出1到100(包含首尾)之间的所有符合条件的整数。
# 参考题解:for 循环
for i in range(1, 101):
if i % 3 == 2 and i % 5 == 3 and i % 7 == 2:
print(f"for符合条件的整数是:{i}")
# 参考题解:while循环
number = 1
while number <= 100:
if number % 3 == 2 and number % 5 == 3 and number % 7 == 2:
print(f"while符合条件的整数是:{number}")
number += 1
题目2:
今有雉兔同笼,上有三十五头,下有九十四足,问雉兔各几何?
这四句话的意思是:有若干只鸡和兔子同在一个笼子里,从上面数,有35个头,从下面数,有94只脚。问:笼中各有多少只鸡和兔?
# 双循环:设鸡有x只,兔有y只
for x in range(36):
for y in range(36):
if (x + y) == 35 and (2*x + 4*y == 94):
print(f"鸡有{x}只,兔有{y}只")
# 单循环:设鸡有x只
for x in range(36):
if 2*x + 4*(35-x) == 94:
print(f"单循环:鸡有{x}只,兔有{35-x}只")
题目3:
给定一个四位数字表示年份(1583年~4000年之间),请编写一个函数,找出这年出现次数最多的是星期几,返回数据的给是为列表,元素为英文字符串,并且按照Monday到Sunday的顺序排列。
备注:每周以周一Monday开始。
示例
输入:2022
输出: [‘Thursday’, ‘Friday’]
解释:2022年中星期六的出现次数最多。
提示:
- 判断闰年:calendar.isleap(2022)
- 判断某一天是周几:calendar.weekday(2022, 1, 1)
def solution(year: int):
# pass
assert solution(2022) == [‘Saturday’]
assert solution(2860) == [‘Thursday’, ‘Friday’]
assert solution(1984) == [‘Monday’, ‘Sunday’]
参考题解:
import calendar
def solution(year):
# 定义一个星期
weekday = ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"]
# 求出一年多少天
days = 366 if calendar.isleap(year) else 365
# 求出第一天是周几
begin_index = calendar.weekday(year, 1, 1)
# 求出余下几天
rest = days % 7
# 返回结果
if rest == 1:
return [weekday[begin_index]]
elif rest == 2:
if begin_index == 6:
return [weekday[0], weekday[begin_index]]
else:
return [weekday[begin_index], weekday[begin_index + 1]]
assert solution(2022) == ['Saturday']
assert solution(2860) == ['Thursday', 'Friday']
assert solution(1984) == ['Monday', 'Sunday']
课堂作业
复习Python面向对象知识,完成练习题:
1、创建一个类【动物类】(Animal)
- 类里有属性(名称,颜色,年龄,性别)
- 类方法有:会叫,会跑
2、创建子类【猫】
- 继承【动物类】,重写父类的__init__方法,继承父类的属性
- 添加一个新的属性,毛发=短毛
- 添加一个新的方法, 会捉老鼠,
- 重写父类的【会叫】的方法,改成【喵喵叫】
3、创建子类【狗】
- 继承【动物类】,复写父类的__init__方法,继承父类的属性
- 添加一个新的属性,毛发=长毛
- 添加一个新的方法, 会看家
- 重写父类的【会叫】的方法,改成【汪汪叫】
4、在入口函数中创建类的实例
- 创建一个猫猫实例,调用捉老鼠的方法
- 打印出:【猫猫的姓名,颜色,年龄,性别,毛发,捉到了老鼠】
- 创建一个狗狗实例,调用【会看家】的方法
- 打印出:【狗狗的姓名,颜色,年龄,性别,毛发】