python - 将 Python 中 FOR 循环的结果写入 .txt 文件
问题描述
我的程序是根据输入值从 .txt 文件中搜索上限值和下限值。
def find_closer():
file = 'C:/.../CariCBABaru.txt'
data = np.loadtxt(file)
x, y = data[:,0], data[:,1]
print(y)
for k in range(len(spasi_baru)):
a = y #[0, 20.28000631, 49.43579604, 78.59158576, 107.7473755, 136.9031652, 166.0589549,
176.5645474, 195.2147447]
b = spasi_baru[k]
# diff_list = []
diff_dict = OrderedDict()
if b in a:
b = input("Number already exists, please enter another number ")
else:
for x in a:
diff = x - b
if diff < 0:
# diff_list.append(diff*(-1))
diff_dict[x] = diff*(-1)
else:
# diff_list.append(diff)
diff_dict[x] = diff
#print("diff_dict", diff_dict)
# print(diff_dict[9])
sort_dict_keys = sorted(diff_dict.keys())
#print(sort_dict_keys)
closer_less = 0
closer_more = 0
#cl = []
#cm = []
for closer in sort_dict_keys:
if closer < b:
closer_less = closer
else:
closer_more = closer
break
#cl.append(closer_less == len(spasi_baru) - 1)
#cm.append(closer_more == len(spasi_baru) - 1)
print(spasi_baru[k],": lower value=", closer_less, "and upper
value =", closer_more)
data = open('C:/.../Batas.txt','w')
text = "Spasi baru:{spasi_baru}, File: {closer_less}, line:{closer_more}".format(spasi_baru=spasi_baru[k], closer_less=closer_less, closer_more=closer_more)
data.write(text)
data.close()
print(spasi_baru[k],": lower value=", closer_less, "and upper value =", closer_more)
find_closer()
结果图片在这里1
然后,我想将这些结果写入文件(txt/csv 没问题)到行和列序列中。但我遇到的问题是,文件只包含一行或在终端中写入最后一个值输出,如下所示,
Spasi baru:400,文件:399.3052727,线路:415.037138
有什么建议可以帮助解决我的问题吗?我花了几个小时尝试了任何不同的代码算法。我正在使用 Python 3.7
解决方案
最好的解决方案是在尝试追加到同一个测试文件时使用 w+ 或 a+ 模式。
而不是这样做:
data = open('C:/.../Batas.txt','w')
做这个:
data = open('C:/.../Batas.txt','w+')
or
data = open('C:/.../Batas.txt','a+')
推荐阅读
- excel - 如何在没有 For Error 的情况下错误处理 Next?
- php - 连接mssql服务器时出现08001
- java - 单元测试 Oracle 视图
- r - 使用 r 中的 Oauth2 在 403 代码后授权访问 Xero
- c++ - C++ Prime Plus 6th
- javascript - 提示用户输入姓名和年龄并相应打印结果的 JavaScript 程序
- python - 如何在不使用虚拟机的情况下在 Windows 上将 .py 文件转换为 .apk 文件
- reactjs - 我需要在 React 和 Redux 中创建无限滚动吗?
- codeigniter - 我正在制作一个关于我们的页面,我需要使用 codeigniter 在单击数据库时更新三个图像以实现任务愿景和 about_us
- arrays - MATLAB:如何生成每行和每列具有特定数量 1 的随机二进制矩阵?