1.txt文件中为12 3aA ?bc 456D~E f78 9adea
去掉数字和空格及符号后,将里面字符都变为小写后,存入2.txt,为aabcdefadea
然后,倒过来,存入3.txt,为aedafedcbaa
不足三的倍数的话,缺几个在后面补几个a,处理后是aedagedcbaaa
并存入4.txt中。
文件5.txt中为编码文件
aed=x,age=y,dcb=z,aaa=t
将4.txt文件编码后,存入6.txt
6.txt为xyzt
使用python实现,需要程序和运行截图
运行效果如图:
import math
import re
with open("images/1.txt", "r") as f: # 打开文件
str1 = f.read() # 读取文件
print('str1: ', str1)
# 匹配所有小写字母
str2 = ''.join(re.findall(r"[a-z]+", str(str1).replace(" ", '').lower()))
print('str2: ', str2)
with open("images/2.txt", "w") as f:
f.write(str2) # 自带文件关闭功能,不需要再写f.close()
# 字符串翻转
str3 = str(str2)[::-1]
print('str3: ', str3)
with open("images/3.txt", "w") as f:
f.write(str3) # 自带文件关闭功能,不需要再写f.close()
# 不是3的倍数,填充'a'
str4 = str3.ljust(math.ceil(len(str3) / 3.0) * 3, 'a')
print('str4: ', str4)
with open("images/4.txt", "w") as f:
f.write(str4) # 自带文件关闭功能,不需要再写f.close()
# 读取编码文件
dict = {}
with open("images/5.txt", "r") as f:
str5 = f.read()
print('str5: ', str5)
str5_ = str(str5).split(",")
for i in str5_:
keys = str(i).split("=")
dict[keys[0]] = keys[1]
str6 = ''
for i in range(len(str4) // 3):
str6 = str6 + dict[str4[i * 3:(i + 1) * 3]]
with open("images/6.txt", "w") as f:
f.write(str6) # 自带文件关闭功能,不需要再写f.close()
print('str6: ', str6)