task1

with open('data1_1.txt', 'r', encoding = 'utf-8') as f:
    data=f.readlines()

n=0
for line in data:
    if line.strip('\n')=='':
        continue
    n +=1
print(f'共{n}行')

 

 

 

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

unique_line=[]
for line in data:
    if data.count(line)==1:
        unique_line.append(line)

print(f'共{ len(unique_line)}独特行')
for i in unique_line:
    print(i)

 

 

 

with open ('data3.txt','r',encoding='utf-8') as f:
    data = f.read()
data = data.split('\n')
m = ['{:20}'.format(i) if i == '原始数据' else '{:22}'.format(i) for i in data]
data1 = ["四舍五入后数据"]
for i in range(1, len(data)):
    data[i] = int(eval(data[i])+0.5)
    data1.append(str(data[i]))
for i in range(len(data)):
    data[i] = m[i] + data1[i] + '\n'
with open("data3_processed.txt", 'w', encoding="utf-8") as f:
    f.writelines(data)
m.pop(0)
print(f"原始数据:\n{[eval(i) for i in m]}\n四舍五入后数据:\n{[int(eval(i)+0.5) for i in m]}")

 

 

task4
with open("data4.txt", 'r', encoding="utf-8") as f:
    data = f.readlines()
list = []
for i in data:
    i = i.strip("\n")
    list.append(i.split("\t"))
for i in range(1,len(list)):
    list[i][3] = int(list[i][3])
list1 = [list.pop(0)]
list.sort(key=lambda x: (x[2], -x[3]))
list2 = list1+list
for i in range(len(list2)):
    m = "\t".join("%s" % i for i in list2[i])
    list2[i] = f"{m}\n"

with open("data4_processed.txt", "w",encoding="utf-8") as f:
    f.writelines(list2)

 

 

 

task5
with open("data5.txt") as f:
    text = f.read()
lines = len(text.splitlines())
words = len(text.split())
spaces = text.count(" ")
str = len(list(text))
print(f"行数:{lines}\n单词数:{words}\n空格数:{spaces}\n字符数:{str}")
line = text.splitlines()
text1 = ''
for i in range(len(line)):
    line[i] = f"{i + 1} " + line[i]+"\n"
    text1 += line[i]
with open('data5_with_line.txt', 'w') as f:
    f.write(text1)

 

 




posted on 2022-05-15 22:40  橡皮小飒  阅读(9)  评论(0编辑  收藏  举报