实验6

task1

f1=open('data3_id.txt','r',encoding='utf-8')
list1,list3=[],[]
for i in f1.readlines():
    list1.append(i.strip().split(','))
def is_valid(x):
    if len(x)==18:
        for i in x:
            if '0'<=i<='9' or i=='X':
                return True
            else:
                return False
    else:
        return False
list2=list1[0];del list1[0]
print(','.join(list2))
for i in list1:
    y=i[1]
    if is_valid(y)==True:

        z=i[1][6:10]+'-'+i[1][11:12]+'-'+i[1][13:14]
        print(i[0]+','+z)
f1.close()

 

 task2

import random
import datetime
t = datetime.datetime.now()
m = eval(input('输入随机抽点人数:'))
with open('D:/实验六数据文件data5.txt', encoding = 'utf-8') as f:
    data = f.readlines()
list = []
for i in range(m):
    x = random.choice(data)
    list.append(x)
    data.remove(x)
filename = t.strftime('%Y%m%d') + '.txt'
with open(filename, "w+", encoding="utf-8") as f:
    f.writelines(list)
    f.seek(0)
    print(f.read())

 

 task3

with open('D:/实验六数据文件data5_1.txt','r',encoding='utf-8')as f:
    data=f.readlines()
    for i in data:
        i.strip("\n")
import datetime
t=datetime.datetime.now()
filename=t.strftime('%Y%m%d')+'txt'
print(f"{'抽点开始':=^40}")
import random
while True:
    n=int(input('输入随机抽点人数:'))
    sample=random.sample(data,n)
    for i in sample:
        data.remove(i)
    with open(filename, 'a+', encoding='utf-8') as f:
        for i in sample:
            print(i)
            f.write(i)
    if n==0:
        print(f"{'抽点结束':=^40}")
        break

 

posted @ 2022-06-01 16:52  周俊西  阅读(32)  评论(0)    收藏  举报