1. 使用time库,把系统的当前时间信息格式化输出
importlocaleimporttime# 以格式2020年08月24日18时50分21秒输出# python time 'locale' codec can't encode character '\u5e74' in position 2: encoding error报错的解决方法locale.setlocale(locale.LC_CTYPE, 'chinese') t=time.localtime() print(time.strftime('%Y年%m月%d日 %H时%M分%S秒', t))
运行结果如下:
2020年08月24日18时54分17秒
2. 使用turtle库,画奥运五环
importturtlep=turtlep.pensize(8) # 画笔尺寸设置5defdrawCircle(x, y, c='red'): p.pu() # 抬起画笔p.goto(x, y) # 绘制圆的起始位置p.pd() # 放下画笔p.color(c) # 绘制c色圆环p.circle(50, 360) # 绘制圆:半径,角度# 五环的颜色drawCircle(0, 0, 'blue') drawCircle(80, 0, 'black') drawCircle(150, 0, 'red') drawCircle(120, -60, 'green') drawCircle(50, -60, 'yellow') p.done()
运行效果如下:
3. 简单实现账目管理系统功能,包括创建一个账户、存钱、取钱、退出系统的功能
classBank(): users= [] def__init__(self): # 创建该账户信息 属性:账号 密码 姓名 金额users= [] self.__cardId=input('请输入账号:') self.__pwd=input('请输入密码:') self.__userName=input('请输入姓名:') self.__banlance=eval(input('请输入该账号金额:')) # 将账户信息以字典添加进列表users.append({'账号': self.__cardId, '密码': self.__pwd, '姓名': self.__userName, '金额': self.__banlance}) print(users) # 存钱defcun(self): flag=Truewhileflag: cardId=input('输入账号:') whileTrue: ifcardId==self.__cardId: curPwd=input('输入密码:') ifcurPwd==self.__pwd: money=eval(input('存入金额:')) print('存钱成功') self.__banlance=self.__banlance+moneyprint('存入:{}元 余额:{}元'.format(money, self.__banlance)) flag=Falsebreakelse: print('密码错误,请重新输入!') continueelse: print('账号错误,请检查后重新输入!') break# 取钱defqu(self): flag1, flage2=True, Truewhileflag1: cardId=input('输入账号:') whileflage2: ifcardId==self.__cardId: curPwd=input('输入密码:') ifcurPwd==self.__pwd: whileTrue: money=eval(input('取出金额:')) ifmoney<=self.__banlance: print('取钱成功') self.__banlance=self.__banlance-moneyprint('取出:{}元 余额:{}元'.format(money, self.__banlance)) flag1, flage2=False, False# 外层循环也退出breakelse: print('余额不足,请重新输入要取的金额!') continueelse: print('密码错误,请重新输入!') continueelse: print('账号错误,请检查后重新输入!') breakbk=Bank() print('=============== 创建账号成功 =================') print('---------------------------------------------------') whileTrue: print('1.存钱\n2.取钱\n3.退出账目管理') order=input('请输入您的选择:') iforder=='1': bk.cun() eliforder=='2': bk.qu() eliforder=='3': print('===================== 退出系统 =======================') breakelse: print('输入选择有误,请重新输入!') continue
4. numpy数组操作
- 创建一个 10x10 的随机数组,里面每个元素为 0-100 的整数,求它的最大值与平均值
- 已知列表[[4,2,8,1],[7,5,9,6],[1, 2, 3, 4]],请将列表转换为ndarray对象,并将前2行的1、3列置为0,并重新输出
importnumpyasnps=np.random.randint(0, 100, size=(10, 10)) # 生成 10x10 的随机数组 里面每个元素为0-100的整数print(s) # 格式化输出print(f'最大值:{np.max(s)}') print(f'平均值:{np.mean(s)}') # 将列表转换为ndarray对象s=np.array([[4, 2, 8, 1], [7, 5, 9, 6], [1, 2, 3, 4]]) print(s) print('-------------------------') s[:2, 0:3:2] =0# 前两行的1、3列置为0print(s) 运行结果如下:[[5918933465972262798] [ 4442932299597336466] [64643126613565923146] [59378255343121662379] [29587330349417496360] [7855742585834806768] [7649578623276363595] [47987614897117328163] [707677109867835269] [171936732864328684]] 最大值:98平均值:51.96[[4281] [7596] [1234]] -------------------------[[0201] [0506] [1234]]
5. 蛇皮走位
importturtlet=turtlet.penup() t.fd(-250) t.pendown() # 海龟腰围t.pensize(30) # 海龟颜色t.pencolor("purple") t.seth(-30) foriinrange(5): # 5节# 以左侧距离为r(如果r是负数,则以右侧距离-r)的点为圆心蛇皮走位(半径,旋转角度)t.circle(50, 2*30) t.circle(-50, 2*30) t.circle(50, 30) t.fd(60) # 蛇身t.circle(25, 180) # 蛇头的半径 角度t.fd(40*2/3) # 蛇头长度t.done() # 程序运行之后不会退出
运行效果如下:
6. 文件操作
下面是一个传感器采集数据文件sensor-data.txt的一部分。其中,每行是一条记录,逗号分隔多个属性。属性包括日期、时间、温度、湿度、光照、电压。其中,温度处于第3列。
date,time,temp,humi,light,volt
2020-02-01,23:03:16.33393,19.3024,38.4629,45.08,2.68742
2020-02-01,23:06:16.01353,19.1652,38.8039,45.08,2.68742
2020-02-01,23:06:46.77808,19.175,38.8379,45.08,2.68942
请用读入文件的形式编写程序,统计并输出温度的平均值,结果保留2位小数。
# 统计并输出温度的平均值,结果保留2位小数。# 打开文件所在路径 读取数据 按'\n'切割 得到每一行数据withopen(r'./测试数据/test_01.txt', 'r') asf: con=f.read().split('\n') temp= [eval(x.split(',')[2]) forxincon[1:]] # 第一行为列名 不要# 格式化输出结果print('温度的平均值为:{:.2f}'.format(sum(temp) /len(temp)))
运行结果如下:
温度的平均值为:19.21