实验任务6

TASK6

with open("data6_1.txt","r",encoding="utf-8") as f:
    data=f.read().split("\n")

data1=[str(m).split("\t") for m in data]

data1.sort(key=lambda x: x[2],reverse=True)
with open("data6_2.txt","w+",encoding="utf-8") as f:
    for line in data1:
        for m in line:
            f.write(m+"\t")
            print(m+"\t",end="")
        f.write("\n")
        print()

 

 

 

 

 

 

 

 

 

 

 

TASK7
import random
with open("data7.txt","r",encoding="gbk")as f:
    data=f.read().split("\n")

n=eval(input("输入随机抽点人数:"))

#随机抽取人数模块
m=set()
while len(m) < n:
    ra=random.randint(0,len(data)-1)
    m.add(str(data[ra]))

#写入模块
with open("lucky.txt","w+",encoding="utf-8")as f:
    for line in m:

f.write(line
+"\n") print(line)
#时间模块
import datetime
time=datetime.datetime.now()
time=time.strftime("%Y%m%d")


import random
with open("data7.txt","r",encoding="gbk")as f:
    data=f.read().split("\n")

n=eval(input("输入随机抽点人数:"))

#随机抽取人数模块
m=set()
while len(m) < n:
    ra=random.randint(0,len(data)-1)
    m.add(str(data[ra]))

#写入模块
with open(f"{time}.txt","w+",encoding="utf-8")as f:
    for line in m:
        f.write(line +"\n")
        print(line)

task7-3
import random
#时间模块
import datetime
time=datetime.datetime.now()
time=time.strftime("%Y%m%d")
with open("data7.txt","r",encoding="gbk")as f:
    data=f.read().split("\n")
n=eval(input("输入随机抽点人数:"))
#利用集合,避免重复
m=set()
while n >0:
    w_data=set()#利用集合,避免单次抽点重复
#随机抽取人数模块
    while len(w_data-m)<n and len(data)>=len(m)+n:
        ra=random.randint(0,len(data)-1)
        w_data.add(str(data[ra]))
    if len(data)-len(m)==0:
        print("班级同学已经全被点过")
    elif len(data)<len(m)+n and len(data)-len(m) !=0:
        print(f"抽点的人数多了,班级内只剩{len(data)-len(m)}个没有被抽到")
        exit()
    else:
        #写入模块       
        with open(f"{time}.txt","a",encoding="utf-8")as f:
            for line in w_data - m:
                f.write(line +"\n")
                print(line)
        m=m | w_data
    n=eval(input("输入随机抽点人数:"))

 

posted @ 2021-05-16 22:49  咸味的风  阅读(76)  评论(2)    收藏  举报