"""
作业1
玩个特别无聊的游戏,猜数字。
玩家输入一个数字与
计算机随机生成的数字作对比
当两个值相等时,则说明用户猜对了
注意:外部不能获取到计算机随机生成的值
"""
import random
class GuessNum:
def get_num(self):
n = random.randint(1, 100)
num = int(input("请输入一个(1-100)之间的数字猜字:"))
if num == n:
print(f"恭喜你猜对了,是:{n}")
else:
while num != n:
if num > n:
print(f"数大了,应该是{n}")
num = int(input("请重新输入:"))
else:
print(f"数小了,应该是{n}")
num = int(input("请重新输入:"))
if num == n:
print(f"恭喜你猜对了,是:{n}")
print("游戏结束")
s = GuessNum()
s.get_num()
import random
class GuessNum(object):
def __init__(self):
self.__rand = random.randint(1, 10)
print(self.__rand)
def guess_num(self):
num = int(input("请输入1-10的数字:"))
while True:
if num == self.__rand:
print(f"恭喜你猜对了!他是:{self.__rand}")
break
else:
print("输入错误,请从新输入!")
num = int(input("请输入1-10的数字:"))
n = GuessNum()
n.guess_num()
优化前代码不像是个类的基本方法,都可以不用类实现,优化后可以很清楚每个方法的作用
思考:输入一个数之后,判断这个数是在这组连续数中前一半还是后一半,每次进行对半判断,直到找到最终结果。
"""
作业2
创建一个煎饼类 调用烹饪时长的方法累计煎饼状态
如果煎的时间在0-3之间则状态为生的
如果煎的时间在3-5之间则状态为半生不熟的
如果煎的时间在5-8之间则状态为全熟的
当时间超过8分钟状态焦了
并且还可以给煎饼添加作料
比如大葱(hhh),大蒜(hhh)?,烤肠等等
"""
import time
class Cookies:
def __init__(self, minutes): # 定义初始方法
self.cookieTime = minutes
self.State_cooking = ""
def cooking_time(self): # 定义不同烹饪时间取值的方法
if self.cookieTime >= 0 and self.cookieTime < 3:
self.State_cooking = "生的"
elif self.cookieTime >= 3 and self.cookieTime < 5:
self.State_cooking = "半生不熟"
elif self.cookieTime >= 5 and self.cookieTime < 8:
self.State_cooking = "全熟"
elif self.cookieTime >= 8:
self.State_cooking = "糊了"
else:
print("时间错误")
return self.State_cooking
minutes = int(time.strftime('%M', time.localtime())[1]) # 调用分钟的个位数
print(minutes)
c = Cookies(minutes) # 实例化Cookies
print(c.cooking_time())
还是没搞明白怎么加调料、肉什么的,后期逐步完善
class Cookies(object):
def __init__(self): # 定义初始方法
self.state_cooking = "生的"
self.cookieTime = 0
self.condiment = [] # 定义列表接收调味品
def __str__(self):
return f"煎饼的状态:{self.state_cooking},煎饼的时长:{self.cookieTime}分钟,煎饼的调味品:{self.condiment}"
def cook_condiment(self, food): # 添加调味品用self.condiment接收
self.condiment.append(food)
def cooking_time(self, cookingtime): # 定义不同烹饪时间取值的方法
self.cookieTime += cookingtime
if self.cookieTime >= 0 and self.cookieTime < 3:
self.state_cooking = "生的"
elif self.cookieTime >= 3 and self.cookieTime < 5:
self.state_cooking = "半生不熟"
elif self.cookieTime >= 5 and self.cookieTime < 8:
self.state_cooking = "全熟"
elif self.cookieTime >= 8:
self.state_cooking = "糊了"
c = Cookies() # 实例化Cookies
m = int(input("请输入分钟数:"))
cond = input("请加入需要的作料:")
c.cooking_time(m)
c.cook_condiment(cond)
print(c)
请输入分钟数:7
请加入需要的作料:牛板筋,青菜,王中王
煎饼的状态:全熟,煎饼的时长:7分钟,煎饼的调味品:['牛板筋,青菜,王中王']
作业2优化前,使用了时间作为烹饪时间从0-9分钟为一个循环,优点不需要人工干预,每到一个时间获取分钟的个位数,进行判断,适合个位数,但是2位数的分钟并不适合,以后需要在优化。优化后代码,直接了当,查看烹饪多长时间可以达到什么效果。