1.创建包含大写小写字母以及数字的任意位数随机验证码
#chr方法可以将ASCII码对应的数字转为字母 , ord方法可以把字符转化为ASCII码
import random num = [] def func (n): for i in range(65,91): num.append(chr(i)) for j in range(0,10): num.append(j) for x in range(97,123): num.append(chr(x)) code = random.sample(num,k=n) ran_code = ''.join(code) return ran_code n = int(input('请输入你所选取的个数')) print(func(n))
2.打印9*9乘法表
for i in range(1,10): for j in range(1,1+i): print(f"{i} * {j} = {i*j} ",end='') print()
3.本题要求根据某城市普通出租车收费标准编写程序进行车费计算。具体标准如下: 起步里程为3公里.起步费10元; 超起步里程后10公里内.每公里2元; 超过10公里以上的部分加收50%的回空补贴费,即每公里3元; 营运过程中,因路阻及乘客要求临时停车的,按每5分钟2元计收(不足5分钟则不收费)。
def func(): distance = int(input('请输入你的距离')) w_time = int(input('请输入等待时间')) if w_time <= 5: if distance <= 3: print('收费10元') elif distance<=10: print(f'收费{10+(distance-3)*2}') else: print(f'收费为{10+2*7+(distance-11)*3}') else: if distance <= 3: print(f'收费{10+(w_time//5)*2}') elif distance <= 10: print(f'收费{10 + (distance - 3) * 2 + (w_time//5) *2}') else: print(f'收费为{10 + 2 * 7 + (distance - 11) * 3 + (w_time//5) *2}') print(func())
4.写一个加法计算器类。
属性为数值1,数值2,
方法为:相加并打印结果,在用户输入的任何一个值不是数字时都捕获异常,并打印一条友好的错误消息。应用异常处理和循环语句,直到用户输入”N“结束程序。
class Count: def __init__(self,num1,num2): self.num1 = num1 self.num2 = num2 def func(self): try: if num1.isdigit() and num2.isdigit(): print(int(self.num2) + int(self.num1)) else: raise except Exception as message: print('输入错误,非数字') print(message) while 1: num1 = input('请输入要计算的数值一') num2 = input('请输入要计算的数值二') if num1 == 'N'or num2 == 'N': print('程序结束') break else: num = Count(num1,num2) num.func()
5.猜数字游戏,随机产生一个1~100的整数,玩家从键盘输入一个数字,如果与随机产生的数字相同则胜利。程序要求
--- 猜错后要提示玩家,猜的数字比实际数字大或小,并提示输入数字以及最新的范围。(例如:随机数是10,玩家猜的是20,则提示比20小,请输入1~20之间的数字;然后又输入5,则提示比5大,请输入5~20之间的数字,如果用户再次输入1提示比1大但是范围还应该保持5~20)
--- 猜对后提示,正确,并输出共猜了多少次。
import random randomInt = random.randint(1,100) num = 0 # 设置猜想次数 maxNum = 100 # 设置最大值 minNum = 0 #设置最小值 while 1: print(randomInt) userSelect = int(input("请输入你的数字")) if randomInt > userSelect: if userSelect > minNum: #设置更新条件 , 如果猜测值大于最小值则更新 minNum = userSelect print(f"猜想值比实际值要小 , 范围在{minNum} - {maxNum}之间") num += 1 elif randomInt < userSelect: if userSelect < maxNum: # 设置更新条件 , 如果猜测值小于最大值则更新 maxNum = userSelect print(f"猜想值比实际值要大 , 范围在{minNum} - {maxNum}之间") num += 1 else: num += 1 print(f"恭喜你猜对了实际值为{randomInt} ,猜想了{num}次") break