实验6
task3
with open('data3_id.txt', 'r', encoding='utf-8') as f: data = f.readlines() info = [line.rstrip('\n').split(',') for line in data] info.remove(info[0]) def is_valid(idnum): if len(idnum) == 18: if idnum.isalnum() is True: if idnum[-1] == 'X' or idnum[-1].isdigit() is True: return True else: return False elif len(idnum) != 18: return False new = [] for line in info: Id = line[1] if is_valid(Id) is True: born_y = Id[6:10] born_m = Id[10:12] born_d = Id[12:14] own = [line[0], born_y, born_m, born_d] new.append(own) a = sorted(new, key=lambda x: x[1]) for name in a: print(f'{name[0]},{name[1]}-{name[2]}-{name[3]}')

task5.1
import datetime import random with open('data5.txt', 'r', encoding='utf-8')as f: info = f.read().strip('\n').split('\n') data = [i.split('\t') for i in info] x = eval(input('输入随机抽点人数:')) choose = random.sample(data, x) t = datetime.datetime.now() with open(t.strftime('%Y%m%d') + '.txt', 'w', encoding='utf-8')as f: for line in choose: f.write('\t'.join(line)+'\n') print('\t'.join(line))


task5.2
import random
import datetime
print('{:=^30}'.format('抽点开始'))
with open('data5.txt', 'r', encoding='utf-8')as f:
info = f.read().strip('\n').split('\n')
data = [i.split('\t') for i in info]
choose2 = []
while True:
x = eval(input('输入抽点人数:'))
if x != 0:
choose = random.sample(data, x)
for i in choose:
m = '\t'.join(i)
print(m)
choose2.append(m)
else:
print('{:=^30}'.format('点名结束'))
break
t = datetime.datetime.now()
with open(t.strftime('%Y%m%d') + '.txt', 'w', encoding='utf-8')as f:
for line in choose2:
f.write(''.join(line)+'\n')



浙公网安备 33010602011771号