ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

实验六

2022-05-18 20:02:26  阅读:128  来源: 互联网

标签:True len datetime 实验 else data data2


Task3:

 1 def is_vaild(x):
 2     if(len(x) != 18):
 3         return False
 4 
 5     else:
 6         for i in range(len(x)):
 7 
 8             if(x[i] < '0' or x[i] > '9'):
 9 
10                 if(x[i] == 'x' or x[i] == 'X'):
11 
12                     if(i + 1 != len(x)):
13                         return False
14                         break
15                     continue
16 
17                 else:
18                     return False
19                     break
20 
21         else:
22             return True
23 
24 def second(elem):
25     return elem[1]
26 
27 with open('实验6数据文件/data3_id.txt', 'r', encoding = 'utf-8')as f:
28     data = f.readlines()
29 
30 for i in range(len(data)):
31     data[i] = data[i].rstrip('\n').split(',')
32 x = data.pop(0)
33 
34 data2 = []
35 for i in range(len(data)):
36     if(is_vaild(data[i][1]) == True):
37         data2.append(data[i])
38 
39 for i in range(len(data2)):
40     year = data2[i][1][6:10]
41     month = data2[i][1][10:12]
42     day = data2[i][1][12:14]
43     data2[i][1] = ('{}-{}-{}'.format(year, month, day))
44 data2.sort(key = second)
45 
46 for i in range(len(data2)):
47     print(('{},{}').format(data2[i][0], data2[i][1]))

 

Task5_1:

 1 with open('实验6数据文件/data5.txt', 'r', encoding = 'utf-8')as f:
 2     data = f.readlines()
 3 
 4 import random
 5 import datetime
 6 
 7 x = set()
 8 
 9 n = eval(input('请输入你想抽的人数:'))
10 
11 while True:
12     if(len(x) < n):
13         x.add(random.randint(0,79))
14     else:
15         break
16 
17 data2 = []
18 for i in x:
19     data2.append(data[i])
20     print(data[i])
21 t = datetime.datetime.now()
22 
23 with open(t.strftime('%Y%m%d') + '.txt', 'w', encoding = 'utf-8')as f:
24     f.writelines(data2)

 

 

 

 

Task5_2:

 1 print(('{:=^40}'.format('抽点开始')))
 2 
 3 with open('实验6数据文件/data5.txt', 'r', encoding = 'utf-8')as f:
 4     data = f.readlines()
 5 
 6 import random
 7 import datetime
 8 
 9 while True:
10     n = eval(input('请输入你想抽的人数:'))
11 
12     if(n == 0):
13         break
14 
15     else:
16         x = set()
17 
18         while True:
19             if(len(x) < n):
20                 y = len(data) - 1
21                 x.add(random.randint(0, y))
22             else:
23                 break
24 
25         data2 = []
26 
27         for i in x:
28             print(data[i], end='')
29             data2.append(data[i])
30         xuhao = list(x)
31         xuhao.sort(reverse = True)
32 
33         for i in xuhao:
34             data.pop(i)
35         t = datetime.datetime.now()
36 
37         with open(t.strftime('%Y%m%d') + '-1.txt', 'a', encoding = 'utf-8')as f:
38             f.writelines(data2)
39 
40 print(('{:=^40}'.format('抽点结束')))

 

 

 

标签:True,len,datetime,实验,else,data,data2
来源: https://www.cnblogs.com/Cr2O3/p/16286078.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有