实验6 文件应用编程-2
Task3
1 def is_valid(x): 2 if len(x) != 18: 3 return False 4 else: 5 for i in x: 6 try: 7 i = int(i) 8 except: 9 if ord(i) != ord('X'): 10 return False 11 return True 12 13 with open('实验6/data3_id.txt', 'r', encoding='utf-8')as f: 14 data = f.readlines() 15 16 data1 = [data[i].rstrip('\n').split(',')for i in range(1,len(data))] 17 18 data2 = [] 19 for i in data1: 20 21 if is_valid(i[1]) == True: 22 data2.append(i) 23 24 for i in data2: 25 i[1] = f'{i[1][6:10]}-{i[1][10:12]}-{i[1][12:14]}' 26 27 data2.sort(key=lambda ele:ele[1]) 28 29 for i in data2: 30 print(','.join(i))

Task5_1
1 import random 2 3 n = int(input('输入随机抽点人数:')) 4 5 with open('实验6/data5.txt', 'r', encoding='utf-8')as f: 6 data = random.sample(f.readlines(), n) 7 8 import datetime 9 10 t = datetime.date.today() 11 filename = t.strftime('%Y%m%d') + '.txt' 12 13 with open(f'实验6/{filename}', 'w+', encoding='utf-8')as f: 14 f.writelines(''.join(data).rstrip('\n')) 15 f.seek(0) 16 print(''.join(f.readlines()))

Task5_2
1 while True: 2 import random 3 4 n = int(input('输入随机抽点人数:')) 5 6 if n == 0: 7 break 8 9 with open('实验6/data5.txt', 'r', encoding='utf-8')as f: 10 data = random.sample(f.readlines(), n) 11 12 import datetime 13 14 try: 15 with open(f'实验6/{filename}', 'r', encoding='utf-8')as f: 16 for i in range(len(data)): 17 for j in f: 18 while True: 19 if data[i] == j: 20 data[i] = random.sample(f.readlines(), 1) 21 else: 22 break 23 except NameError: 24 pass 25 26 t = datetime.date.today() 27 filename = t.strftime('%Y%m%d') + '.txt' 28 29 with open(f'实验6/{filename}', 'a+', encoding='utf-8')as f: 30 f.writelines(''.join(data).rstrip('\n')) 31 print(''.join(data).rstrip('\n'))


浙公网安备 33010602011771号