python - 在python中将文件1中的值分配给文件2
问题描述
我有两个文本文件。文本文件 1:0=0.345,1=34.5,2=54.6,3=235.67 文本文件 2:(0+2)*(3+2)
是否有 python 操作将文本文件 1 中的相应数字分配给文本文件 2?我正在文本文件 2 中进行计算 谢谢!
解决方案
假设两个文件中的数据与您提供的数据相似,您可以将第一个文件中的分配存储在字典中,然后将它们映射到第二个文件中的等式中。
with open("file1.txt", "r") as f:
file1 = f.read() # file1 = "0=0.345,1=34.5,2=54.6,3=235.67"
with open("file2.txt", "r") as f:
file2 = f.read() # file2 = "(0+2)*(3+2)"
variables = {}
for equation in file1.split(","):
var, value = equation.split("=")
variables[var] = value
# variables = {'0': '0.345', '1': '34.5', '2': '54.6', '3': '235.67'}
operation = [variables.get(letter, letter) for letter in file2]
exec("result = " + "".join(operation)) # result = (0.345+54.6)*(235.67+54.6)
print(result) # 15948.885149999998
推荐阅读
- css - 使用 css 减少箭头粗细
- sqlalchemy - 在 .commit() 之后检索 id
- javascript - 来自 unsplash 的 Reactjs api 数据未存储在 this.state.photos 中,但正在控制台上注销
- javascript - 如何等待元素完全呈现以执行 CSS 过渡?
- c# - 用于创建对象并在其他方法中填充其属性的模式
- javascript - 我的函数在它爆发之前只循环一次。我怎样才能解决这个问题?Vuejs
- nginx - 在 GKE 上配置 nginx 默认使用入口身份验证?
- firebase - 将 Firebase Crashlytics 数据部分导出到 BigQuery
- tensorflow - TensorFlow & Keras 预测阈值
- reactjs - 在 Canvas PowerApp 中管理 PCF 代码组件上的“属性”选项卡