1. 使用time库,把系统的当前时间信息格式化输出
import locale
import time
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库,画奥运五环
import turtle
p = turtle
p. pensize( 8 )
def drawCircle ( x, y, c= 'red' ) :
p. pu( )
p. goto( x, y)
p. pd( )
p. color( 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( )
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
16 17 18 19 20 21
运行效果如下:
3. 简单实现账目管理系统功能,包括创建一个账户、存钱、取钱、退出系统的功能
class Bank ( ) :
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)
def cun ( self) :
flag = True
while flag:
cardId = input ( '输入账号:' )
while True :
if cardId == self. __cardId:
curPwd = input ( '输入密码:' )
if curPwd == self. __pwd:
money = eval ( input ( '存入金额:' ) )
print ( '存钱成功' )
self. __banlance = self. __banlance + money
print ( '存入:{}元 余额:{}元' . format ( money, self. __banlance) )
flag = False
break
else :
print ( '密码错误,请重新输入!' )
continue
else :
print ( '账号错误,请检查后重新输入!' )
break
def qu ( self) :
flag1, flage2 = True , True
while flag1:
cardId = input ( '输入账号:' )
while flage2:
if cardId == self. __cardId:
curPwd = input ( '输入密码:' )
if curPwd == self. __pwd:
while True :
money = eval ( input ( '取出金额:' ) )
if money <= self. __banlance:
print ( '取钱成功' )
self. __banlance = self. __banlance - money
print ( '取出:{}元 余额:{}元' . format ( money, self. __banlance) )
flag1, flage2 = False
, False
break
else :
print ( '余额不足,请重新输入要取的金额!' )
continue
else :
print ( '密码错误,请重新输入!' )
continue
else :
print ( '账号错误,请检查后重新输入!' )
break
bk = Bank( )
print ( '=============== 创建账号成功 =================' )
print ( '---------------------------------------------------' )
while True :
print ( '1.存钱\n2.取钱\n3.退出账目管理' )
order = input ( '请输入您的选择:' )
if order == '1' :
bk. cun( )
elif order == '2' :
bk. qu( )
elif order == '3' :
print ( '===================== 退出系统 =======================' )
break
else :
print ( '输入选择有误,请重新输入!' )
continue
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60
61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79
4. numpy数组操作
创建一个 10x10 的随机数组,里面每个元素为 0-100 的整数,求它的最大值与平均值
已知列表[[4,2,8,6],[7,5,9,1]],请将列表转换为ndarray对象,并将前2行的1、3列置为0,并重新输出
import numpy as np
s = np. random. randint( 0 , 100 , size= ( 10 , 10 ) )
print ( s)
print ( f'最大值:{np.max(s)}' )
print ( f'平均值:{np.mean(s)}' )
s= np. array( [ [ 4 , 2 , 8 , 1 ] , [ 7 , 5 , 9 , 6 ] , [ 1 , 2 , 3 , 4 ] ] )
print ( s)
print ( '-------------------------' )
s[ : 2 , 0 : 3 : 2 ] = 0
print ( s)
运行结果如下:
[ [ 59 18 93 34 6 59 72 26 27 98 ]
[ 4 44 29 32 29 95 97 33 64 66 ]
[ 64 64 31 26 61 35 65 92 31 46 ]
[ 59 37 82 55 34 31 21 66 23 79 ]
[ 29 58 73 30 34 94 17 49 63 60 ]
[ 78 55 74 25 8 58 34 80 67 68 ]
[ 76 49 57 86 23 2 76 36 35 95 ]
[ 47 98 76 14 89 71 17 32 81 63 ]
[ 70 76 77 10 98 6 78 35 2 69 ]
[ 17 1 93 67 32 86 43 2 86 84 ] ]
最大值:98
平均值:51.96
[ [ 4 2 8 1 ]
[ 7 5 9 6 ]
[
1 2 3 4 ] ]
- - - - - - - - - - - - - - - - - - - - - - - - -
[ [ 0 2 0 1 ]
[ 0 5 0 6 ]
[ 1 2 3 4 ] ]
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
5. 蛇皮走位
import turtle
t = turtle
t. penup( )
t. fd( - 250 )
t. pendown( )
t. pensize( 30 )
t. pencolor( "purple" )
t. seth( - 30 )
for i in range ( 5 ) :
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( )
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 1
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
运行效果如下:
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位小数。
with open ( r'./测试数据/test_01.txt' ) as f:
con = f. read( ) . split( '\n' )
temp = [ eval ( x. split( ',' ) [ 2 ] ) for x in con[ 1 : ] ]
print ( '温度的平均值为:{:.2f}' . format ( sum ( temp) / len ( temp) ) )
运行结果如下:
温度的平均值为:19.21