目录
需求
数据展示
以空格分隔的990个数据
最终结果实现效果
代码
发现我自己是真的喜欢暴力求解,当然昨天是因为有点晚所以只求能有个结果就行,今天来用最近学习的内容来试一下能不能实现速度上的提升。
原始版本1
代码
# 要被读取的文件的文件名
file_path = r"G:\useful_utils\YYT\val1.txt"
# 要输出文件
output_file_name = r"G:\useful_utils\YYT\val1_out.txt"
# 读取txt文档,将每一个数字变成列表file中的一个元素
# 这里我觉的就需要改进,又是*又是切片又是split的……
with open(file_path) as f:
file = [*f.readlines()[0].split(" ")]
# 指定起始点为0
i = 0
# 如果要输出的文件不存在,则会自动创建,在这里以别名f做之后的操作
with open(output_file_name, 'a', encoding='utf-8') as f:
# while循环,每次i值+1
# 实现每次弹出i个元素。第1个while弹出1个元素,第2个while弹出2个元素……
# 利用pop依次弹出
while i <= len(file):
# 创建一个新列表,接收后续的元素
line_write = []
for it in range(i):
# 弹出列表中的第一个元素,这样就可以实现三角输出
# 但Python列表的append方法和pop方法,都是复杂度较高的方法,得优化
line_write.append(file.pop(0))
# 元素后需要一个空格
line_write.append(" ")
# 写出元素
f.writelines(line_write)
f.writelines("\n")
i += 1
效率
想死,区区990个元素,就耗费了我这么多时间……
标签:元素,PYTHON,代码,打印,倒三角,while,弹出,file,txt From: https://www.cnblogs.com/xiaoaozi/p/16600810.html