将浮点数放在 f.write 中 python
Put the float number in f.write in python
我有一个文本文件(100 行和 2 列),例如:
1 2
2 3
我想将每一行更改为文本文件,如下所示:
x1 1 1*2
x2 2 4
x1 2 4
x2 3 6
我使用这段代码来做到这一点:
with open("data.txt", "r") as msg:
data = msg.readlines()
output = 0
for line in data:
with open(str(output)+"_parameter.txt", "w") as msg:
for i, char in enumerate(line.strip().split()):
msg.write("x%s %s %s*2\n" % (str(i + 1), char, char))
output += 1
效果很好。但问题是,在创建的txt文件中,数字保存为
x1 1 1*2
x2 2 2*2
x1 2 2*2
x2 3 3*2
但是我想保存浮点数而不是 (2*2),我想要文本文件中的 (4)。不是字符串。
你能帮我解决这个问题吗?谢谢
with open("data.txt", "r") as msg:
data = msg.readlines()
output = 0
for line in data:
with open(str(output)+"_parameter.txt", "w") as msg:
for i, char in enumerate(line.strip().split()):
if i == 0:
msg.write("x%s %s %s*2\n" % (str(i + 1), char, char))
else:
msg.write("x%s %s %s\n" % (str(i + 1), char, str(int(char)*2)))
output += 1
你好:)。在这里,您对第一行除外的每个第三列 x*y 进行计算。
我有一个文本文件(100 行和 2 列),例如:
1 2
2 3
我想将每一行更改为文本文件,如下所示:
x1 1 1*2
x2 2 4
x1 2 4
x2 3 6
我使用这段代码来做到这一点:
with open("data.txt", "r") as msg:
data = msg.readlines()
output = 0
for line in data:
with open(str(output)+"_parameter.txt", "w") as msg:
for i, char in enumerate(line.strip().split()):
msg.write("x%s %s %s*2\n" % (str(i + 1), char, char))
output += 1
效果很好。但问题是,在创建的txt文件中,数字保存为
x1 1 1*2
x2 2 2*2
x1 2 2*2
x2 3 3*2
但是我想保存浮点数而不是 (2*2),我想要文本文件中的 (4)。不是字符串。 你能帮我解决这个问题吗?谢谢
with open("data.txt", "r") as msg:
data = msg.readlines()
output = 0
for line in data:
with open(str(output)+"_parameter.txt", "w") as msg:
for i, char in enumerate(line.strip().split()):
if i == 0:
msg.write("x%s %s %s*2\n" % (str(i + 1), char, char))
else:
msg.write("x%s %s %s\n" % (str(i + 1), char, str(int(char)*2)))
output += 1
你好:)。在这里,您对第一行除外的每个第三列 x*y 进行计算。